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 StreamUI, reference master (a83f11), with Swift 6.1 for macOS (SPM) on 1 May 2025 10:49:09 UTC.

Swift 6 data race errors: 5

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/StreamUI/StreamUI.swift.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/StreamUI/StreamUI.swift
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at a83f117 Update README.md
Cloned https://github.com/StreamUI/StreamUI.swift.git
Revision (git rev-parse @):
a83f117fd247b503acb233eb92a8d9ce9b55962f
SUCCESS checkout https://github.com/StreamUI/StreamUI.swift.git at master
Fetching https://github.com/vapor/console-kit.git
Fetching https://github.com/apple/swift-nio.git from cache
Fetching https://github.com/kean/Nuke.git
Fetching https://github.com/shogo4405/HaishinKit.swift.git
Fetching https://github.com/pointfreeco/xctest-dynamic-overlay from cache
Fetching https://github.com/pointfreeco/swift-concurrency-extras from cache
Fetching https://github.com/apple/swift-argument-parser.git from cache
[1/5485] Fetching console-kit
[221/31560] Fetching console-kit, nuke
[4625/68632] Fetching console-kit, nuke, haishinkit.swift
Fetched https://github.com/vapor/console-kit.git from cache (1.08s)
Fetched https://github.com/apple/swift-nio.git from cache (1.09s)
[4612/63147] Fetching nuke, haishinkit.swift
Fetching https://github.com/apple/swift-log.git from cache
Fetching https://github.com/apple/swift-system.git from cache
Fetched https://github.com/kean/Nuke.git from cache (1.70s)
Fetched https://github.com/pointfreeco/swift-concurrency-extras from cache (1.70s)
Fetched https://github.com/pointfreeco/xctest-dynamic-overlay from cache (1.71s)
Fetching https://github.com/pointfreeco/swift-clocks.git from cache
Fetching https://github.com/kylef/Spectre.git
Fetching https://github.com/stencilproject/Stencil.git
Fetched https://github.com/apple/swift-log.git from cache (0.66s)
Fetching https://github.com/kylef/PathKit.git
Fetched https://github.com/apple/swift-system.git from cache (0.79s)
Fetching https://github.com/apple/swift-collections.git from cache
[3315/37072] Fetching haishinkit.swift
Fetched https://github.com/pointfreeco/swift-clocks.git from cache (0.46s)
Fetching https://github.com/apple/swift-atomics.git from cache
[3338/38093] Fetching haishinkit.swift, spectre
[3502/43386] Fetching haishinkit.swift, spectre, stencil
[3714/44797] Fetching haishinkit.swift, spectre, stencil, pathkit
Fetched https://github.com/kylef/Spectre.git from cache (0.86s)
Fetching https://github.com/shogo4405/Logboard.git
[7765/43776] Fetching haishinkit.swift, stencil, pathkit
Fetched https://github.com/kylef/PathKit.git from cache (0.84s)
[6672/42365] Fetching haishinkit.swift, stencil
Fetched https://github.com/apple/swift-atomics.git from cache (0.48s)
Fetched https://github.com/apple/swift-collections.git from cache (0.78s)
Fetched https://github.com/stencilproject/Stencil.git from cache (1.02s)
[4342/37072] Fetching haishinkit.swift
[7416/38632] Fetching haishinkit.swift, logboard
Fetched https://github.com/shogo4405/Logboard.git from cache (1.05s)
[13638/37072] Fetching haishinkit.swift
Fetched https://github.com/shogo4405/HaishinKit.swift.git from cache (5.91s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (5.91s)
Computing version for https://github.com/vapor/console-kit.git
Computed https://github.com/vapor/console-kit.git at 4.14.3 (6.44s)
Computing version for https://github.com/kean/Nuke.git
Computed https://github.com/kean/Nuke.git at 12.7.3 (0.46s)
Computing version for https://github.com/pointfreeco/swift-clocks.git
Computed https://github.com/pointfreeco/swift-clocks.git at 1.0.2 (0.91s)
Computing version for https://github.com/stencilproject/Stencil.git
Computed https://github.com/stencilproject/Stencil.git at 0.15.1 (0.57s)
Computing version for https://github.com/shogo4405/HaishinKit.swift.git
Computed https://github.com/shogo4405/HaishinKit.swift.git at 1.9.0 (0.46s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.5.4 (0.58s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.4.0 (0.54s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.67.0 (0.56s)
Computing version for https://github.com/pointfreeco/xctest-dynamic-overlay
Computed https://github.com/pointfreeco/xctest-dynamic-overlay at 1.1.2 (0.59s)
Computing version for https://github.com/pointfreeco/swift-concurrency-extras
Computed https://github.com/pointfreeco/swift-concurrency-extras at 1.1.0 (0.58s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (0.58s)
Computing version for https://github.com/kylef/PathKit.git
Computed https://github.com/kylef/PathKit.git at 1.0.1 (2.71s)
Computing version for https://github.com/shogo4405/Logboard.git
Computed https://github.com/shogo4405/Logboard.git at 2.5.0 (0.43s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.3.1 (0.48s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.1.1 (0.64s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (0.44s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.5.4
Creating working copy for https://github.com/shogo4405/HaishinKit.swift.git
Working copy of https://github.com/shogo4405/HaishinKit.swift.git resolved at 1.9.0
Creating working copy for https://github.com/pointfreeco/swift-concurrency-extras
Working copy of https://github.com/pointfreeco/swift-concurrency-extras resolved at 1.1.0
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.4.0
Creating working copy for https://github.com/pointfreeco/swift-clocks.git
Working copy of https://github.com/pointfreeco/swift-clocks.git resolved at 1.0.2
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
Creating working copy for https://github.com/vapor/console-kit.git
Working copy of https://github.com/vapor/console-kit.git resolved at 4.14.3
Creating working copy for https://github.com/pointfreeco/xctest-dynamic-overlay
Working copy of https://github.com/pointfreeco/xctest-dynamic-overlay resolved at 1.1.2
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.67.0
Creating working copy for https://github.com/shogo4405/Logboard.git
Working copy of https://github.com/shogo4405/Logboard.git resolved at 2.5.0
Creating working copy for https://github.com/kylef/PathKit.git
Working copy of https://github.com/kylef/PathKit.git resolved at 1.0.1
Creating working copy for https://github.com/kean/Nuke.git
Working copy of https://github.com/kean/Nuke.git resolved at 12.7.3
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.1.1
Creating working copy for https://github.com/stencilproject/Stencil.git
Working copy of https://github.com/stencilproject/Stencil.git resolved at 0.15.1
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.3.1
========================================
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": "streamui.swift",
      "name": "StreamUI",
      "url": "https://github.com/StreamUI/StreamUI.swift.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/StreamUI.swift",
      "dependencies": [
        {
          "identity": "swift-argument-parser",
          "name": "swift-argument-parser",
          "url": "https://github.com/apple/swift-argument-parser.git",
          "version": "1.5.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-argument-parser",
          "dependencies": [
          ]
        },
        {
          "identity": "swift-log",
          "name": "swift-log",
          "url": "https://github.com/apple/swift-log.git",
          "version": "1.6.3",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-log",
          "dependencies": [
          ]
        },
        {
          "identity": "haishinkit.swift",
          "name": "HaishinKit",
          "url": "https://github.com/shogo4405/HaishinKit.swift.git",
          "version": "1.9.8",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/HaishinKit.swift",
          "dependencies": [
            {
              "identity": "logboard",
              "name": "Logboard",
              "url": "https://github.com/shogo4405/Logboard.git",
              "version": "2.5.0",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Logboard",
              "dependencies": [
              ]
            }
          ]
        },
        {
          "identity": "stencil",
          "name": "Stencil",
          "url": "https://github.com/stencilproject/Stencil.git",
          "version": "0.15.1",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Stencil",
          "dependencies": [
            {
              "identity": "pathkit",
              "name": "PathKit",
              "url": "https://github.com/kylef/PathKit.git",
              "version": "1.0.1",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PathKit",
              "dependencies": [
                {
                  "identity": "spectre",
                  "name": "Spectre",
                  "url": "https://github.com/kylef/Spectre.git",
                  "version": "0.10.1",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Spectre",
                  "dependencies": [
                  ]
                }
              ]
            },
            {
              "identity": "spectre",
              "name": "Spectre",
              "url": "https://github.com/kylef/Spectre.git",
              "version": "0.10.1",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Spectre",
              "dependencies": [
              ]
            }
          ]
        },
        {
          "identity": "swift-clocks",
          "name": "swift-clocks",
          "url": "https://github.com/pointfreeco/swift-clocks.git",
          "version": "1.0.6",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-clocks",
          "dependencies": [
            {
              "identity": "swift-concurrency-extras",
              "name": "swift-concurrency-extras",
              "url": "https://github.com/pointfreeco/swift-concurrency-extras",
              "version": "1.3.1",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-concurrency-extras",
              "dependencies": [
              ]
            },
            {
              "identity": "xctest-dynamic-overlay",
              "name": "xctest-dynamic-overlay",
              "url": "https://github.com/pointfreeco/xctest-dynamic-overlay",
              "version": "1.5.2",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/xctest-dynamic-overlay",
              "dependencies": [
              ]
            }
          ]
        },
        {
          "identity": "nuke",
          "name": "Nuke",
          "url": "https://github.com/kean/Nuke.git",
          "version": "12.8.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Nuke",
          "dependencies": [
          ]
        },
        {
          "identity": "console-kit",
          "name": "console-kit",
          "url": "https://github.com/vapor/console-kit.git",
          "version": "4.15.2",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/console-kit",
          "dependencies": [
            {
              "identity": "swift-log",
              "name": "swift-log",
              "url": "https://github.com/apple/swift-log.git",
              "version": "1.6.3",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-log",
              "dependencies": [
              ]
            },
            {
              "identity": "swift-nio",
              "name": "swift-nio",
              "url": "https://github.com/apple/swift-nio.git",
              "version": "2.82.1",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-nio",
              "dependencies": [
                {
                  "identity": "swift-atomics",
                  "name": "swift-atomics",
                  "url": "https://github.com/apple/swift-atomics.git",
                  "version": "1.2.0",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-atomics",
                  "dependencies": [
                  ]
                },
                {
                  "identity": "swift-collections",
                  "name": "swift-collections",
                  "url": "https://github.com/apple/swift-collections.git",
                  "version": "1.1.4",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-collections",
                  "dependencies": [
                  ]
                },
                {
                  "identity": "swift-system",
                  "name": "swift-system",
                  "url": "https://github.com/apple/swift-system.git",
                  "version": "1.4.2",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-system",
                  "dependencies": [
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/StreamUI/StreamUI.swift.git
[1/224] Fetching streamui.swift
Fetched https://github.com/StreamUI/StreamUI.swift.git from cache (0.76s)
Fetching https://github.com/kean/Nuke.git from cache
Fetching https://github.com/vapor/console-kit.git from cache
Fetching https://github.com/stencilproject/Stencil.git from cache
Fetching https://github.com/shogo4405/HaishinKit.swift.git from cache
Fetching https://github.com/apple/swift-argument-parser.git from cache
Fetching https://github.com/pointfreeco/swift-clocks.git from cache
Fetching https://github.com/apple/swift-log.git from cache
Fetched https://github.com/pointfreeco/swift-clocks.git from cache (0.59s)
Fetched https://github.com/shogo4405/HaishinKit.swift.git from cache (0.59s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (0.60s)
Fetched https://github.com/vapor/console-kit.git from cache (0.60s)
Fetched https://github.com/kean/Nuke.git from cache (0.60s)
Fetched https://github.com/stencilproject/Stencil.git from cache (0.60s)
Fetched https://github.com/apple/swift-log.git from cache (0.60s)
Computing version for https://github.com/stencilproject/Stencil.git
Computed https://github.com/stencilproject/Stencil.git at 0.15.1 (0.68s)
Fetching https://github.com/kylef/Spectre.git from cache
Fetching https://github.com/kylef/PathKit.git from cache
Fetched https://github.com/kylef/Spectre.git from cache (0.44s)
Fetched https://github.com/kylef/PathKit.git from cache (0.44s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (0.51s)
Computing version for https://github.com/kylef/PathKit.git
Computed https://github.com/kylef/PathKit.git at 1.0.1 (0.03s)
Computing version for https://github.com/kean/Nuke.git
Computed https://github.com/kean/Nuke.git at 12.8.0 (0.05s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.5.0 (0.05s)
Computing version for https://github.com/vapor/console-kit.git
Computed https://github.com/vapor/console-kit.git at 4.15.2 (0.04s)
Fetching https://github.com/apple/swift-nio.git from cache
Fetched https://github.com/apple/swift-nio.git from cache (0.72s)
Computing version for https://github.com/pointfreeco/swift-clocks.git
Computed https://github.com/pointfreeco/swift-clocks.git at 1.0.6 (1.23s)
Fetching https://github.com/pointfreeco/swift-concurrency-extras from cache
Fetching https://github.com/pointfreeco/xctest-dynamic-overlay from cache
Fetched https://github.com/pointfreeco/swift-concurrency-extras from cache (0.48s)
Fetched https://github.com/pointfreeco/xctest-dynamic-overlay from cache (0.49s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.3 (0.96s)
Computing version for https://github.com/pointfreeco/swift-concurrency-extras
Computed https://github.com/pointfreeco/swift-concurrency-extras at 1.3.1 (0.45s)
Computing version for https://github.com/shogo4405/HaishinKit.swift.git
Computed https://github.com/shogo4405/HaishinKit.swift.git at 1.9.8 (0.03s)
Fetching https://github.com/shogo4405/Logboard.git from cache
Fetched https://github.com/shogo4405/Logboard.git from cache (0.46s)
Computing version for https://github.com/shogo4405/Logboard.git
Computed https://github.com/shogo4405/Logboard.git at 2.5.0 (0.51s)
Computing version for https://github.com/pointfreeco/xctest-dynamic-overlay
Computed https://github.com/pointfreeco/xctest-dynamic-overlay at 1.5.2 (0.46s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.82.1 (0.68s)
Fetching https://github.com/apple/swift-atomics.git from cache
Fetching https://github.com/apple/swift-collections.git from cache
Fetching https://github.com/apple/swift-system.git from cache
Fetched https://github.com/apple/swift-atomics.git from cache (0.52s)
Fetched https://github.com/apple/swift-collections.git from cache (0.53s)
Fetched https://github.com/apple/swift-system.git from cache (0.54s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (0.60s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.4.2 (0.44s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.1.4 (0.03s)
Creating working copy for https://github.com/vapor/console-kit.git
Working copy of https://github.com/vapor/console-kit.git resolved at 4.15.2
Creating working copy for https://github.com/shogo4405/HaishinKit.swift.git
Working copy of https://github.com/shogo4405/HaishinKit.swift.git resolved at 1.9.8
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.82.1
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.3
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.4.2
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.5.0
Creating working copy for https://github.com/pointfreeco/swift-clocks.git
Working copy of https://github.com/pointfreeco/swift-clocks.git resolved at 1.0.6
Creating working copy for https://github.com/pointfreeco/swift-concurrency-extras
Working copy of https://github.com/pointfreeco/swift-concurrency-extras resolved at 1.3.1
Creating working copy for https://github.com/pointfreeco/xctest-dynamic-overlay
Working copy of https://github.com/pointfreeco/xctest-dynamic-overlay resolved at 1.5.2
Creating working copy for https://github.com/kean/Nuke.git
Working copy of https://github.com/kean/Nuke.git resolved at 12.8.0
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/shogo4405/Logboard.git
Working copy of https://github.com/shogo4405/Logboard.git resolved at 2.5.0
Creating working copy for https://github.com/stencilproject/Stencil.git
Working copy of https://github.com/stencilproject/Stencil.git resolved at 0.15.1
Creating working copy for https://github.com/kylef/PathKit.git
Working copy of https://github.com/kylef/PathKit.git resolved at 1.0.1
Creating working copy for https://github.com/StreamUI/StreamUI.swift.git
Working copy of https://github.com/StreamUI/StreamUI.swift.git resolved at master (a83f117)
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.1.4
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
Found 7 product dependencies
  - swift-argument-parser
  - swift-log
  - HaishinKit
  - Stencil
  - swift-clocks
  - Nuke
  - console-kit
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/StreamUI/StreamUI.swift.git
https://github.com/StreamUI/StreamUI.swift.git
{
  "dependencies" : [
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.4.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.5.4",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "haishinkit.swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.9.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/shogo4405/HaishinKit.swift.git"
    },
    {
      "identity" : "stencil",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.15.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/stencilproject/Stencil.git"
    },
    {
      "identity" : "swift-clocks",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-clocks.git"
    },
    {
      "identity" : "nuke",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "12.7.3",
            "upper_bound" : "13.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kean/Nuke.git"
    },
    {
      "identity" : "console-kit",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.14.3",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/vapor/console-kit.git"
    }
  ],
  "manifest_display_name" : "StreamUI",
  "name" : "StreamUI",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "StreamUI",
      "targets" : [
        "StreamUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "CLIExample",
      "targets" : [
        "CLIExample"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "VideoViews",
      "targets" : [
        "VideoViews"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "GenerateTemplate",
      "targets" : [
        "GenerateTemplate"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "VideoViews",
      "module_type" : "SwiftTarget",
      "name" : "VideoViews",
      "path" : "Examples/VideoViews",
      "product_memberships" : [
        "CLIExample",
        "VideoViews"
      ],
      "sources" : [
        "BasicCounterView.swift",
        "ImageTestView.swift",
        "RandomSwiftUIComponentsTestView.swift",
        "SceneKitTestView.swift",
        "SoundTestView.swift",
        "SpriteKitTestView.swift",
        "VideoTestView.swift",
        "WebViewTestView.swift"
      ],
      "target_dependencies" : [
        "StreamUI"
      ],
      "type" : "library"
    },
    {
      "c99name" : "StreamUITests",
      "module_type" : "SwiftTarget",
      "name" : "StreamUITests",
      "path" : "Tests/StreamUITests",
      "sources" : [
        "StreamUITests.swift"
      ],
      "target_dependencies" : [
        "StreamUI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "StreamUI",
      "module_type" : "SwiftTarget",
      "name" : "StreamUI",
      "path" : "Sources/StreamUI",
      "product_dependencies" : [
        "HaishinKit",
        "Logging",
        "Clocks",
        "Nuke",
        "ConsoleKit"
      ],
      "product_memberships" : [
        "StreamUI",
        "CLIExample",
        "VideoViews"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Resources/discord.png",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Resources/github.png",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Resources/x.png",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Components/Internal/HUD.swift",
        "Components/Internal/SizedView.swift",
        "Components/StreamingImage.swift",
        "Components/StreamingLoadingIndicator.swift",
        "Components/StreamingMediaPlayer.swift",
        "Components/StreamingProgressView.swift",
        "Components/StreamingVideoPlayer.swift",
        "Extensions/AVAudioTime+Extensions.swift",
        "Extensions/Duration+Extensions.swift",
        "Extensions/Image+Extension.swift",
        "Helpers/ControlledClock.swift",
        "Helpers/FrameTimer.swift",
        "Helpers/LoggerHelper.swift",
        "Helpers/MetalRenderer.swift",
        "Helpers/PreloadManager.swift",
        "Helpers/RecorderKeys.swift",
        "Helpers/RenderSettings.swift",
        "Helpers/Streams/AudioStream.swift",
        "Helpers/Streams/FrameStream.swift",
        "Helpers/createStreamUIRecorder.swift",
        "Recorders/AudioRecorder/AudioRecorder.swift",
        "Recorders/Recorder.swift",
        "Recorders/VideoRecorder/Extensions/createCMSampleBuffer.swift",
        "Recorders/VideoRecorder/VideoRecorder.swift",
        "StreamUI.swift",
        "Streaming/RTMPStreaming.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GenerateTemplate",
      "module_type" : "SwiftTarget",
      "name" : "GenerateTemplate",
      "path" : "Scripts/GenerateTemplate",
      "product_dependencies" : [
        "Stencil",
        "ArgumentParser",
        "Logging"
      ],
      "product_memberships" : [
        "GenerateTemplate"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Scripts/GenerateTemplate/Templates/Package.swift.stencil",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Scripts/GenerateTemplate/Templates/main.swift.stencil",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "index.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CLIExample",
      "module_type" : "SwiftTarget",
      "name" : "CLIExample",
      "path" : "Examples/CLIExample",
      "product_dependencies" : [
        "ArgumentParser"
      ],
      "product_memberships" : [
        "CLIExample"
      ],
      "sources" : [
        "index.swift"
      ],
      "target_dependencies" : [
        "StreamUI",
        "VideoViews"
      ],
      "type" : "executable"
    }
  ],
  "tools_version" : "5.10"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/37] Write sources
[7/37] Write CLIExample-entitlement.plist
[7/37] Write GenerateTemplate-entitlement.plist
[8/37] Copying x.png
[11/37] Copying discord.png
[11/37] Write sources
[11/37] Copying main.swift.stencil
[11/37] Write sources
[11/37] Copying Package.swift.stencil
[14/37] Write sources
[18/37] Copying github.png
[19/37] Write sources
[27/37] Write swift-version-2F0A5646E1D333AE.txt
[29/126] Compiling ArgumentParserToolInfo ToolInfo.swift
[30/126] Emitting module ArgumentParserToolInfo
[31/164] Compiling Logging MetadataProvider.swift
[31/164] Compiling c-nioatomics.c
[33/164] Emitting module Logging
[34/164] Compiling Logging LogHandler.swift
[35/164] Compiling Logging Logging.swift
[36/164] Compiling Logging Locks.swift
[36/164] Compiling SwiftPMSupport dummy.m
[37/164] Compiling c-atomics.c
[39/170] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[40/170] Emitting module NIOConcurrencyHelpers
[41/170] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[42/170] Compiling NIOConcurrencyHelpers lock.swift
[43/170] Compiling NIOConcurrencyHelpers NIOLock.swift
[44/170] Compiling NIOConcurrencyHelpers atomics.swift
[45/197] Compiling ConcurrencyExtras ActorIsolated.swift
[46/197] Emitting module ConcurrencyExtras
[47/197] Compiling ConcurrencyExtras UncheckedSendable.swift
[48/197] Compiling XCTestDynamicOverlay Deprecations.swift
[49/197] Emitting module ConsoleKitTerminal
[50/199] Compiling ConsoleKitTerminal Console+Output.swift
[51/199] Compiling ConsoleKitTerminal Console+Wait.swift
[52/199] Compiling ConsoleKitTerminal ConsoleColor.swift
[53/199] Compiling ConsoleKitTerminal ConsoleClear.swift
[54/203] Compiling ConsoleKitTerminal readpassphrase_linux.swift
[55/203] Compiling ConsoleKitTerminal AnySendableHashable.swift
[56/203] Compiling ConsoleKitTerminal ProgressBar.swift
[57/203] Compiling ConsoleKitTerminal Console+Clear.swift
[58/203] Compiling ConsoleKitTerminal Console+Ephemeral.swift
[59/203] Compiling ConsoleKitTerminal ActivityIndicatorState.swift
[60/203] Compiling ConsoleKitTerminal CustomActivity.swift
[61/203] Compiling ConsoleKitTerminal LoadingBar.swift
[62/203] Compiling ConsoleKitTerminal ActivityBar.swift
[63/203] Compiling ConsoleKitTerminal ActivityIndicator.swift
[64/203] Compiling ConsoleKitTerminal ActivityIndicatorRenderer.swift
[65/203] Compiling ConsoleKitTerminal ConsoleStyle.swift
[66/203] Compiling ConsoleKitTerminal ConsoleText.swift
[67/203] Compiling ConsoleKitTerminal ConsoleTextFragment.swift
[68/203] Compiling ConsoleKitTerminal Console+Confirm.swift
[69/203] Compiling ConsoleKitTerminal Console+Input.swift
[70/203] Compiling ConsoleKitTerminal Console+Center.swift
[71/203] Compiling ArgumentParser Platform.swift
[72/203] Compiling ArgumentParser SequenceExtensions.swift
[73/203] Compiling ArgumentParser StringExtensions.swift
[74/203] Compiling ArgumentParser Tree.swift
[75/203] Compiling ConcurrencyExtras Result.swift
[76/203] Compiling ConcurrencyExtras Task.swift
[77/203] Compiling ConcurrencyExtras Locking.swift
[78/203] Compiling Logboard LBLoggerAppender.swift
[79/203] Compiling ConcurrencyExtras MainSerialExecutor.swift
[80/203] Compiling ConcurrencyExtras LockIsolated.swift
[81/203] Compiling ConcurrencyExtras AsyncStream.swift
[82/203] Compiling ConcurrencyExtras AsyncThrowingStream.swift
[83/203] Compiling Logboard MultiAppender.swift
[84/203] Compiling XCTestDynamicOverlay XCTCurrentTestCase.swift
[85/203] Compiling Logboard LBLogger.Data.swift
[86/203] Compiling Logboard ConsoleAppender.swift
[87/203] Emitting module Logboard
[88/203] Compiling Logboard LBLogger.swift
[89/203] Compiling XCTestDynamicOverlay GeneratePlaceholder.swift
[90/203] Compiling XCTestDynamicOverlay RuntimeWarnings.swift
[91/203] Compiling Logboard NullAppender.swift
[92/203] Emitting module XCTestDynamicOverlay
[93/203] Compiling XCTestDynamicOverlay DefaultInitializable.swift
[94/203] Compiling XCTestDynamicOverlay Unimplemented.swift
[95/203] Compiling XCTestDynamicOverlay XCTIsTesting.swift
[96/203] Compiling XCTestDynamicOverlay XCTExpectFailure.swift
[97/203] Compiling XCTestDynamicOverlay XCTFail.swift
[98/203] Emitting module ArgumentParser
[100/203] Compiling ConsoleKitTerminal ConsoleLogger.swift
[101/203] Compiling ConsoleKitTerminal LoggerFragment.swift
[102/203] Compiling ArgumentParser ExpressibleByArgument.swift
[103/203] Compiling ArgumentParser ParsableArguments.swift
[104/203] Compiling ArgumentParser ParsableArgumentsValidation.swift
[105/203] Compiling ArgumentParser ParsableCommand.swift
[106/203] Compiling ArgumentParser ArgumentDecoder.swift
[110/203] Compiling Logboard OSLoggerAppender.swift
[111/203] Compiling Logboard SocketAppender.swift
[116/203] Compiling ConsoleKitTerminal Console+Ask.swift
[117/203] Compiling ConsoleKitTerminal Console+Choose.swift
[124/203] Compiling ConsoleKitTerminal ANSI.swift
[125/203] Compiling ConsoleKitTerminal Console.swift
[126/203] Compiling ConsoleKitTerminal Terminal.swift
[129/348] Emitting module PathKit
[130/348] Compiling PathKit PathKit.swift
[131/348] Compiling ConsoleKitCommands MergedAsyncCommandGroup.swift
[132/348] Compiling ConsoleKitCommands Command.swift
[133/348] Compiling ConsoleKitCommands CommandContext.swift
[134/348] Compiling ConsoleKitCommands CommandError.swift
[135/348] Compiling HaishinKit CMTime+Extension.swift
[136/348] Compiling HaishinKit CMVideoDimention+Extension.swift
[137/348] Compiling HaishinKit CMVideoFormatDescription+Extension.swift
[138/348] Compiling HaishinKit CVPixelBuffer+Extension.swift
[139/348] Compiling ConsoleKitCommands CommandInput.swift
[140/348] Compiling ConsoleKitCommands Argument.swift
[141/348] Compiling ConsoleKitCommands CommandSignature.swift
[142/348] Compiling ConsoleKitCommands GenerateAutocompleteCommand.swift
[143/348] Compiling HaishinKit IOCaptureSession.swift
[144/348] Compiling HaishinKit IOCaptureUnit.swift
[145/348] Compiling HaishinKit IOCaptureVideoPreview.swift
[146/348] Compiling HaishinKit IOMixer.swift
[147/370] Compiling Stencil Errors.swift
[148/370] Compiling Stencil Expression.swift
[149/372] Emitting module ConsoleKitCommands
[150/372] Compiling Stencil Context.swift
[151/372] Compiling Stencil DynamicMemberLookup.swift
[152/372] Compiling Stencil Environment.swift
[153/372] Compiling Stencil Include.swift
[154/372] Compiling Stencil LazyValueWrapper.swift
[155/372] Compiling Stencil ForTag.swift
[156/372] Compiling Stencil IfTag.swift
[157/372] Compiling Stencil Lexer.swift
[158/372] Compiling Stencil NowTag.swift
[159/372] Compiling Stencil Parser.swift
[160/372] Emitting module Stencil
[161/374] Compiling Stencil TrimBehaviour.swift
[162/374] Compiling Stencil Variable.swift
[163/374] Compiling Stencil Loader.swift
[164/374] Compiling Stencil Node.swift
[171/374] Compiling Stencil Inheritance.swift
[172/374] Compiling Stencil KeyPath.swift
[173/374] Compiling Stencil Template.swift
[174/374] Compiling Stencil Tokenizer.swift
[180/374] Compiling Stencil Extension.swift
[181/374] Compiling Stencil FilterTag.swift
[182/374] Compiling Stencil Filters.swift
[184/374] Compiling Clocks Timer.swift
[185/374] Compiling Clocks UnimplementedClock.swift
[197/374] Emitting module Clocks
[198/374] Compiling Clocks TestClock.swift
[199/379] Compiling Clocks ImmediateClock.swift
[200/379] Compiling Clocks AnyClock.swift
[201/379] Compiling ConsoleKit Exports.swift
[202/379] Emitting module ConsoleKit
[203/379] Emitting module Nuke
[205/384] Compiling HaishinKit CVPixelBufferPool+Extension.swift
[206/384] Compiling HaishinKit IOAudioMixerBySingleTrack.swift
[207/384] Compiling HaishinKit IOAudioMixerSettings.swift
[208/384] Compiling HaishinKit IOAudioMixerTrack.swift
[209/384] Compiling HaishinKit IOAudioMonitor.swift
[216/384] Compiling HaishinKit ExpressibleByIntegerLiteral+Extension.swift
[217/384] Compiling HaishinKit Mirror+Extension.swift
[218/384] Compiling HaishinKit NSView+Extension.swift
[219/384] Compiling HaishinKit URL+Extension.swift
[220/384] Compiling HaishinKit VTCompressionSession+Extension.swift
[221/384] Compiling HaishinKit VTDecompressionSession+Extension.swift
[222/384] Compiling HaishinKit VTRotationSessionOption+Extension.swift
[223/384] Compiling HaishinKit vImage_Buffer+Extension.swift
[224/384] Compiling HaishinKit AudioNode.swift
[225/384] Compiling HaishinKit IOAudioCaptureUnit.swift
[232/384] Compiling HaishinKit IOAudioRingBuffer.swift
[233/384] Compiling HaishinKit IOAudioTime.swift
[234/384] Compiling HaishinKit IOAudioUnit.swift
[239/384] Compiling HaishinKit IOMuxer.swift
[240/384] Compiling HaishinKit IOStream.swift
[241/384] Compiling HaishinKit Data+Extension.swift
[242/384] Compiling Nuke TaskFetchOriginalData.swift
[243/384] Compiling Nuke TaskFetchOriginalImage.swift
[244/384] Compiling Nuke TaskFetchWithPublisher.swift
[245/384] Compiling Nuke TaskLoadData.swift
[246/384] Compiling Nuke TaskLoadImage.swift
[259/384] Compiling Clocks SwiftUI.swift
[260/384] Compiling Clocks _AsyncTimerSequence.swift
[261/384] Compiling Clocks Shims.swift
[262/384] Compiling Clocks Lock.swift
[276/396] Emitting module HaishinKit
[316/396] Compiling GenerateTemplate resource_bundle_accessor.swift
[320/396] Compiling HaishinKit IOStreamView.swift
[321/396] Compiling HaishinKit IOTellyUnit.swift
[322/396] Compiling HaishinKit IOUnit.swift
[323/396] Compiling HaishinKit IOVideoCaptureUnit.swift
[324/396] Compiling HaishinKit IOVideoMixer.swift
[325/396] Compiling HaishinKit IOVideoMixerSettings.swift
[326/396] Compiling HaishinKit IOVideoUnit.swift
[327/396] Compiling HaishinKit MTHKView.swift
[328/396] Compiling HaishinKit MediaLink.swift
[329/396] Compiling HaishinKit RTMPStreamInfo.swift
[330/396] Compiling HaishinKit RTMPTSocket.swift
[331/396] Compiling HaishinKit RTMPTimestamp.swift
[332/396] Compiling HaishinKit Choreographer.swift
[333/396] Compiling HaishinKit Screen.swift
[334/396] Compiling HaishinKit ScreenObject.swift
[335/396] Compiling HaishinKit ScreenObjectContainer.swift
[336/396] Compiling HaishinKit ScreenRenderer.swift
[337/396] Compiling HaishinKit Shape.swift
[338/396] Compiling HaishinKit ShapeFactory.swift
[339/396] Compiling HaishinKit VideoEffect.swift
[340/396] Compiling HaishinKit VideoRotator.swift
[341/396] Compiling GenerateTemplate index.swift
/Users/admin/builder/spi-builder-workspace/Scripts/GenerateTemplate/index.swift:16:13: warning: initialization of immutable value 'templatesPath' was never used; consider replacing with assignment to '_' or removing it
14 |         let currentPath = FileManager.default.currentDirectoryPath
15 |
16 |         let templatesPath = currentPath + "/Scripts/GenerateTemplate/Templates"
   |             `- warning: initialization of immutable value 'templatesPath' was never used; consider replacing with assignment to '_' or removing it
17 |
18 |         guard !FileManager.default.fileExists(atPath: productName) else {
[342/396] Emitting module GenerateTemplate
[342/396] Write Objects.LinkFileList
[344/396] Compiling HaishinKit AVAudioUtil.swift
[345/396] Compiling HaishinKit AnyUtil.swift
[346/396] Compiling HaishinKit Atomic.swift
[347/396] Compiling HaishinKit ByteArray.swift
[348/396] Compiling HaishinKit Constants.swift
[349/396] Compiling HaishinKit DataBuffer.swift
[350/396] Compiling HaishinKit DataConvertible.swift
[351/396] Compiling HaishinKit DeviceUtil.swift
[352/396] Compiling HaishinKit InstanceHolder.swift
[353/396] Compiling HaishinKit MD5.swift
[354/396] Compiling HaishinKit Running.swift
[355/396] Compiling HaishinKit TypedBlockQueue.swift
[356/396] Compiling HaishinKit PacketizedElementaryStream.swift
[357/396] Compiling HaishinKit TSField.swift
[358/396] Compiling HaishinKit TSPacket.swift
[359/396] Compiling HaishinKit TSProgram.swift
[360/396] Compiling HaishinKit TSReader.swift
[361/396] Compiling HaishinKit TSWriter.swift
[362/396] Compiling HaishinKit NetClient.swift
[363/396] Compiling HaishinKit NetService.swift
[364/396] Compiling HaishinKit NetSocket.swift
[365/396] Compiling HaishinKit AMF0Serializer.swift
[366/396] Compiling HaishinKit AMF3Serializer.swift
[367/396] Compiling HaishinKit AMFFoundation.swift
[368/396] Compiling HaishinKit PiPHKView.swift
[369/396] Compiling HaishinKit SoundTransform.swift
[370/396] Compiling HaishinKit ADTS.swift
[371/396] Compiling HaishinKit AVCDecoderConfigurationRecord.swift
[372/396] Compiling HaishinKit AVCNALUnit.swift
[373/396] Compiling HaishinKit AudioSpecificConfig.swift
[374/396] Compiling HaishinKit CRC32.swift
[375/396] Compiling HaishinKit ESSpecificData.swift
[376/396] Compiling HaishinKit HEVCDecoderConfigurationRecord.swift
[377/396] Compiling HaishinKit HEVCNALUnit.swift
[378/396] Compiling HaishinKit ISOTypeBufferUtil.swift
[379/396] Compiling HaishinKit NALUnitReader.swift
[380/396] Compiling HaishinKit EventDispatcher.swift
[381/396] Compiling HaishinKit FLVFoundation.swift
[382/396] Compiling HaishinKit RTMPChunk.swift
[383/396] Compiling HaishinKit RTMPConnection.swift
[384/396] Compiling HaishinKit RTMPHandshake.swift
[385/396] Compiling HaishinKit RTMPMessage.swift
[386/396] Compiling HaishinKit RTMPMuxer.swift
[387/396] Compiling HaishinKit RTMPNWSocket.swift
[388/396] Compiling HaishinKit RTMPObjectEncoding.swift
[389/396] Compiling HaishinKit RTMPSharedObject.swift
[390/396] Compiling HaishinKit RTMPSocketCompatible.swift
[391/396] Compiling HaishinKit RTMPStream.swift
[391/396] Linking GenerateTemplate
[392/396] Applying GenerateTemplate
[394/422] Compiling StreamUI Image+Extension.swift
[395/422] Compiling StreamUI ControlledClock.swift
[396/422] Compiling StreamUI FrameTimer.swift
[397/422] Compiling StreamUI RecorderKeys.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/RecorderKeys.swift:11:23: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public struct RecorderKey: EnvironmentKey {
11 |     public static let defaultValue: Recorder? = nil
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:8:14: note: class 'Recorder' does not conform to the 'Sendable' protocol
  6 |
  7 | @Observable
  8 | public class Recorder {
    |              `- note: class 'Recorder' does not conform to the 'Sendable' protocol
  9 |     public enum RecordingState {
 10 |         case idle, recording, paused, finished
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/Streams/AudioStream.swift:26:23: warning: sending value of non-Sendable type 'AudioSample' risks causing data races; this is an error in the Swift 6 language mode
24 |
25 |     func enqueue(_ buffer: AVAudioPCMBuffer, withTime time: CMTime) {
26 |         continuation?.yield(AudioSample(buffer: buffer, time: time))
   |                       |- warning: sending value of non-Sendable type 'AudioSample' risks causing data races; this is an error in the Swift 6 language mode
   |                       `- note: Passing task-isolated value of non-Sendable type 'AudioSample' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
27 |     }
28 |
[398/422] Compiling StreamUI RenderSettings.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/RecorderKeys.swift:11:23: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public struct RecorderKey: EnvironmentKey {
11 |     public static let defaultValue: Recorder? = nil
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:8:14: note: class 'Recorder' does not conform to the 'Sendable' protocol
  6 |
  7 | @Observable
  8 | public class Recorder {
    |              `- note: class 'Recorder' does not conform to the 'Sendable' protocol
  9 |     public enum RecordingState {
 10 |         case idle, recording, paused, finished
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/Streams/AudioStream.swift:26:23: warning: sending value of non-Sendable type 'AudioSample' risks causing data races; this is an error in the Swift 6 language mode
24 |
25 |     func enqueue(_ buffer: AVAudioPCMBuffer, withTime time: CMTime) {
26 |         continuation?.yield(AudioSample(buffer: buffer, time: time))
   |                       |- warning: sending value of non-Sendable type 'AudioSample' risks causing data races; this is an error in the Swift 6 language mode
   |                       `- note: Passing task-isolated value of non-Sendable type 'AudioSample' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
27 |     }
28 |
[399/422] Compiling StreamUI AudioStream.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/RecorderKeys.swift:11:23: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public struct RecorderKey: EnvironmentKey {
11 |     public static let defaultValue: Recorder? = nil
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:8:14: note: class 'Recorder' does not conform to the 'Sendable' protocol
  6 |
  7 | @Observable
  8 | public class Recorder {
    |              `- note: class 'Recorder' does not conform to the 'Sendable' protocol
  9 |     public enum RecordingState {
 10 |         case idle, recording, paused, finished
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/Streams/AudioStream.swift:26:23: warning: sending value of non-Sendable type 'AudioSample' risks causing data races; this is an error in the Swift 6 language mode
24 |
25 |     func enqueue(_ buffer: AVAudioPCMBuffer, withTime time: CMTime) {
26 |         continuation?.yield(AudioSample(buffer: buffer, time: time))
   |                       |- warning: sending value of non-Sendable type 'AudioSample' risks causing data races; this is an error in the Swift 6 language mode
   |                       `- note: Passing task-isolated value of non-Sendable type 'AudioSample' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
27 |     }
28 |
[400/424] Compiling StreamUI StreamingVideoPlayer.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:68:25: warning: call to main actor-isolated instance method 'add' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
  66 |
  67 |         if let currentItem = player.currentItem {
  68 |             currentItem.add(videoOutput)
     |                         `- warning: call to main actor-isolated instance method 'add' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
  69 |             addObservers(to: currentItem)
  70 |         }
AVFoundation.AVPlayerItem.add:3:24: note: calls to instance method 'add' from outside of its actor context are implicitly asynchronous
1 | class AVPlayerItem {
2 | @available(macOS 10.8, *)
3 |   @MainActor open func add(_ output: AVPlayerItemOutput)}
  |                        `- note: calls to instance method 'add' from outside of its actor context are implicitly asynchronous
4 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:96:13: warning: capture of 'self' with non-sendable type 'VideoFrameCaptureManager?' in a '@Sendable' closure
  46 |
  47 | @Observable
  48 | class VideoFrameCaptureManager {
     |       `- note: class 'VideoFrameCaptureManager' does not conform to the 'Sendable' protocol
  49 |     var frame: CGImage?
  50 |     var videoLoaded = PassthroughSubject<Void, Never>()
     :
  94 |         let timeInterval = CMTime(seconds: 1.0 / fps, preferredTimescale: CMTimeScale(NSEC_PER_SEC))
  95 |         player.addPeriodicTimeObserver(forInterval: timeInterval, queue: .main) { [weak self] time in
  96 |             self?.captureCurrentFrame(at: time)
     |             `- warning: capture of 'self' with non-sendable type 'VideoFrameCaptureManager?' in a '@Sendable' closure
  97 |         }
  98 |     }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:68:25: warning: sending value of non-Sendable type 'AVPlayerItemVideoOutput' risks causing data races; this is an error in the Swift 6 language mode
  66 |
  67 |         if let currentItem = player.currentItem {
  68 |             currentItem.add(videoOutput)
     |                         |- warning: sending value of non-Sendable type 'AVPlayerItemVideoOutput' risks causing data races; this is an error in the Swift 6 language mode
     |                         `- note: sending task-isolated value of non-Sendable type 'AVPlayerItemVideoOutput' to main actor-isolated instance method 'add' risks causing races in between task-isolated and main actor-isolated uses
  69 |             addObservers(to: currentItem)
  70 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:110:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 108 |         if let cgImage = context.createCGImage(ciImage, from: ciImage.extent) {
 109 |             DispatchQueue.main.async {
 110 |                 self.frame = cgImage
     |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
     |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 111 |             }
 112 |         }
[401/424] Compiling StreamUI AVAudioTime+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:68:25: warning: call to main actor-isolated instance method 'add' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
  66 |
  67 |         if let currentItem = player.currentItem {
  68 |             currentItem.add(videoOutput)
     |                         `- warning: call to main actor-isolated instance method 'add' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
  69 |             addObservers(to: currentItem)
  70 |         }
AVFoundation.AVPlayerItem.add:3:24: note: calls to instance method 'add' from outside of its actor context are implicitly asynchronous
1 | class AVPlayerItem {
2 | @available(macOS 10.8, *)
3 |   @MainActor open func add(_ output: AVPlayerItemOutput)}
  |                        `- note: calls to instance method 'add' from outside of its actor context are implicitly asynchronous
4 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:96:13: warning: capture of 'self' with non-sendable type 'VideoFrameCaptureManager?' in a '@Sendable' closure
  46 |
  47 | @Observable
  48 | class VideoFrameCaptureManager {
     |       `- note: class 'VideoFrameCaptureManager' does not conform to the 'Sendable' protocol
  49 |     var frame: CGImage?
  50 |     var videoLoaded = PassthroughSubject<Void, Never>()
     :
  94 |         let timeInterval = CMTime(seconds: 1.0 / fps, preferredTimescale: CMTimeScale(NSEC_PER_SEC))
  95 |         player.addPeriodicTimeObserver(forInterval: timeInterval, queue: .main) { [weak self] time in
  96 |             self?.captureCurrentFrame(at: time)
     |             `- warning: capture of 'self' with non-sendable type 'VideoFrameCaptureManager?' in a '@Sendable' closure
  97 |         }
  98 |     }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:68:25: warning: sending value of non-Sendable type 'AVPlayerItemVideoOutput' risks causing data races; this is an error in the Swift 6 language mode
  66 |
  67 |         if let currentItem = player.currentItem {
  68 |             currentItem.add(videoOutput)
     |                         |- warning: sending value of non-Sendable type 'AVPlayerItemVideoOutput' risks causing data races; this is an error in the Swift 6 language mode
     |                         `- note: sending task-isolated value of non-Sendable type 'AVPlayerItemVideoOutput' to main actor-isolated instance method 'add' risks causing races in between task-isolated and main actor-isolated uses
  69 |             addObservers(to: currentItem)
  70 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:110:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 108 |         if let cgImage = context.createCGImage(ciImage, from: ciImage.extent) {
 109 |             DispatchQueue.main.async {
 110 |                 self.frame = cgImage
     |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
     |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 111 |             }
 112 |         }
[402/424] Compiling StreamUI Duration+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:68:25: warning: call to main actor-isolated instance method 'add' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
  66 |
  67 |         if let currentItem = player.currentItem {
  68 |             currentItem.add(videoOutput)
     |                         `- warning: call to main actor-isolated instance method 'add' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
  69 |             addObservers(to: currentItem)
  70 |         }
AVFoundation.AVPlayerItem.add:3:24: note: calls to instance method 'add' from outside of its actor context are implicitly asynchronous
1 | class AVPlayerItem {
2 | @available(macOS 10.8, *)
3 |   @MainActor open func add(_ output: AVPlayerItemOutput)}
  |                        `- note: calls to instance method 'add' from outside of its actor context are implicitly asynchronous
4 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:96:13: warning: capture of 'self' with non-sendable type 'VideoFrameCaptureManager?' in a '@Sendable' closure
  46 |
  47 | @Observable
  48 | class VideoFrameCaptureManager {
     |       `- note: class 'VideoFrameCaptureManager' does not conform to the 'Sendable' protocol
  49 |     var frame: CGImage?
  50 |     var videoLoaded = PassthroughSubject<Void, Never>()
     :
  94 |         let timeInterval = CMTime(seconds: 1.0 / fps, preferredTimescale: CMTimeScale(NSEC_PER_SEC))
  95 |         player.addPeriodicTimeObserver(forInterval: timeInterval, queue: .main) { [weak self] time in
  96 |             self?.captureCurrentFrame(at: time)
     |             `- warning: capture of 'self' with non-sendable type 'VideoFrameCaptureManager?' in a '@Sendable' closure
  97 |         }
  98 |     }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:68:25: warning: sending value of non-Sendable type 'AVPlayerItemVideoOutput' risks causing data races; this is an error in the Swift 6 language mode
  66 |
  67 |         if let currentItem = player.currentItem {
  68 |             currentItem.add(videoOutput)
     |                         |- warning: sending value of non-Sendable type 'AVPlayerItemVideoOutput' risks causing data races; this is an error in the Swift 6 language mode
     |                         `- note: sending task-isolated value of non-Sendable type 'AVPlayerItemVideoOutput' to main actor-isolated instance method 'add' risks causing races in between task-isolated and main actor-isolated uses
  69 |             addObservers(to: currentItem)
  70 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingVideoPlayer.swift:110:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 108 |         if let cgImage = context.createCGImage(ciImage, from: ciImage.extent) {
 109 |             DispatchQueue.main.async {
 110 |                 self.frame = cgImage
     |                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
     |                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 111 |             }
 112 |         }
[403/424] Compiling StreamUI RTMPStreaming.swift
[404/424] Compiling StreamUI resource_bundle_accessor.swift
[405/424] Compiling StreamUI Recorder.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:114:29: warning: result of call to 'render()' is unused
112 | //                        try await Task.sleep(for: frameDuration)
113 |                     }
114 |                    self.hud.render()
    |                             `- warning: result of call to 'render()' is unused
115 |
116 |                 case .paused:
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:117:29: warning: result of call to 'render()' is unused
115 |
116 |                 case .paused:
117 |                    self.hud.render()
    |                             `- warning: result of call to 'render()' is unused
118 |                     try await Task.sleep(for: frameDuration)
119 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:125:21: warning: result of call to 'render()' is unused
123 |             }
124 |
125 |            self.hud.render()
    |                     `- warning: result of call to 'render()' is unused
126 |             await finishRecording()
127 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:179:20: warning: value 'trimmedURL' was defined but never used; consider replacing with boolean test
177 |
178 |         if let outputURL = assetWriter?.outputURL, let duration = renderSettings.captureDuration {
179 |             if let trimmedURL = await trimVideo(at: outputURL, to: duration) {
    |                    `- warning: value 'trimmedURL' was defined but never used; consider replacing with boolean test
180 |                 try? FileManager.default.removeItem(at: tempOutputURL)
181 |             }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:252:24: warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
250 |         return await withCheckedContinuation { continuation in
251 |             exportSession.exportAsynchronously {
252 |                 switch exportSession.status {
    |                        `- warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
253 |                 case .completed:
254 |                     continuation.resume(returning: trimmedOutputURL)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetExportSession.h:156:12: note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
154 | NS_SWIFT_NONSENDABLE
155 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos)
156 | @interface AVAssetExportSession : NSObject
    |            `- note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
157 | {
158 | @private
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:91:30: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 89 |
 90 |     private func startRecordingTask() {
 91 |         recordingTask = Task {
    |                              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 92 |             let clock = ContinuousClock()
 93 |
 94 |             let totalFrames = calculateTotalFrames()
    |                               `- note: closure captures 'self' which is accessible to code in the current task
 95 |             let frameDuration = Duration.seconds(1) / Int(renderSettings.fps)
 96 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:102:27: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
100 |                     let start = clock.now
101 |
102 |                     await captureFrame()
    |                           |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                           |- note: sending main actor-isolated 'self' to main actor-isolated instance method 'captureFrame()' risks causing data races between main actor-isolated and local nonisolated uses
    |                           `- note: access can happen concurrently
103 |
104 |                     await controlledClock.advance(by: frameDuration)
[406/424] Compiling StreamUI createCMSampleBuffer.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:114:29: warning: result of call to 'render()' is unused
112 | //                        try await Task.sleep(for: frameDuration)
113 |                     }
114 |                    self.hud.render()
    |                             `- warning: result of call to 'render()' is unused
115 |
116 |                 case .paused:
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:117:29: warning: result of call to 'render()' is unused
115 |
116 |                 case .paused:
117 |                    self.hud.render()
    |                             `- warning: result of call to 'render()' is unused
118 |                     try await Task.sleep(for: frameDuration)
119 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:125:21: warning: result of call to 'render()' is unused
123 |             }
124 |
125 |            self.hud.render()
    |                     `- warning: result of call to 'render()' is unused
126 |             await finishRecording()
127 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:179:20: warning: value 'trimmedURL' was defined but never used; consider replacing with boolean test
177 |
178 |         if let outputURL = assetWriter?.outputURL, let duration = renderSettings.captureDuration {
179 |             if let trimmedURL = await trimVideo(at: outputURL, to: duration) {
    |                    `- warning: value 'trimmedURL' was defined but never used; consider replacing with boolean test
180 |                 try? FileManager.default.removeItem(at: tempOutputURL)
181 |             }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:252:24: warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
250 |         return await withCheckedContinuation { continuation in
251 |             exportSession.exportAsynchronously {
252 |                 switch exportSession.status {
    |                        `- warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
253 |                 case .completed:
254 |                     continuation.resume(returning: trimmedOutputURL)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetExportSession.h:156:12: note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
154 | NS_SWIFT_NONSENDABLE
155 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos)
156 | @interface AVAssetExportSession : NSObject
    |            `- note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
157 | {
158 | @private
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:91:30: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 89 |
 90 |     private func startRecordingTask() {
 91 |         recordingTask = Task {
    |                              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 92 |             let clock = ContinuousClock()
 93 |
 94 |             let totalFrames = calculateTotalFrames()
    |                               `- note: closure captures 'self' which is accessible to code in the current task
 95 |             let frameDuration = Duration.seconds(1) / Int(renderSettings.fps)
 96 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:102:27: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
100 |                     let start = clock.now
101 |
102 |                     await captureFrame()
    |                           |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                           |- note: sending main actor-isolated 'self' to main actor-isolated instance method 'captureFrame()' risks causing data races between main actor-isolated and local nonisolated uses
    |                           `- note: access can happen concurrently
103 |
104 |                     await controlledClock.advance(by: frameDuration)
[407/424] Emitting module StreamUI
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/LoggerHelper.swift:13:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | // Singleton Logger Helper Class
11 | class LoggerHelper {
   |       `- note: class 'LoggerHelper' does not conform to the 'Sendable' protocol
12 |     // Shared instance
13 |     static let shared = LoggerHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |     // Private logger instance
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:7:5: warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     `- warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDevice.h:434:11: note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 432 |  */
 433 | API_AVAILABLE(macos(10.11), ios(8.0))
 434 | @protocol MTLDevice <NSObject>
     |           `- note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 435 |
 436 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 3 | import CoreImage
 4 | import CoreVideo
 5 | import Metal
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     |- note: add '@MainActor' to make let 'metalDevice' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:8:5: warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     `- warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIContext.h:36:12: note: class 'CIContext' does not conform to the 'Sendable' protocol
 34 |
 35 | NS_CLASS_AVAILABLE(10_4, 5_0)
 36 | @interface CIContext : NSObject
    |            `- note: class 'CIContext' does not conform to the 'Sendable' protocol
 37 | {
 38 |     void *_priv;
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 1 |
 2 |
 3 | import CoreImage
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 4 | import CoreVideo
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     |- note: add '@MainActor' to make let 'ciContext' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:14:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
11 | import Nuke
12 |
13 | class PreloadManager {
   |       `- note: class 'PreloadManager' does not conform to the 'Sendable' protocol
14 |     static let shared = PreloadManager()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     private let imagePrefetcher: ImagePrefetcher
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/RecorderKeys.swift:11:23: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public struct RecorderKey: EnvironmentKey {
11 |     public static let defaultValue: Recorder? = nil
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'Recorder?' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/Recorder.swift:8:14: note: class 'Recorder' does not conform to the 'Sendable' protocol
  6 |
  7 | @Observable
  8 | public class Recorder {
    |              `- note: class 'Recorder' does not conform to the 'Sendable' protocol
  9 |     public enum RecordingState {
 10 |         case idle, recording, paused, finished
[408/424] Compiling StreamUI FrameStream.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:94:13: warning: no 'async' operations occur within 'await' expression
 92 |     private func processAudioSamples() async {
 93 |         for await audioSample in audioStream.stream {
 94 |             await appendAudioBuffer(audioSample.buffer, at: audioSample.time)
    |             `- warning: no 'async' operations occur within 'await' expression
 95 |         }
 96 |     }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:215:20: warning: value 'frameTime' was defined but never used; consider replacing with boolean test
213 |         playerNode.installTap(onBus: 0, bufferSize: bufferSize, format: commonFormat) { [weak self] buffer, when in
214 |
215 |             if let frameTime = self?.frameTimer?.getCurrentFrameTime() {
    |                    `- warning: value 'frameTime' was defined but never used; consider replacing with boolean test
216 |                 self?.addToStream(buffer, at: when.toCMTime())
217 |             }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:252:17: warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
250 |             }
251 |
252 |             dst.assign(from: src.advanced(by: Int(start)), count: Int(frameCount))
    |                 |- warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
    |                 `- note: use 'update(from:count:)' instead
253 |         }
254 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:243:13: warning: initialization of immutable value 'sampleSize' was never used; consider replacing with assignment to '_' or removing it
241 |
242 |         let channelCount = buffer.format.channelCount
243 |         let sampleSize = buffer.format.streamDescription.pointee.mBytesPerFrame / UInt32(channelCount)
    |             `- warning: initialization of immutable value 'sampleSize' was never used; consider replacing with assignment to '_' or removing it
244 |
245 |         for channel in 0 ..< channelCount {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:326:13: warning: no calls to throwing functions occur within 'try' expression
324 |
325 |         do {
326 |             try converter.convert(to: convertedBuffer, error: nil, withInputFrom: inputBlock)
    |             `- warning: no calls to throwing functions occur within 'try' expression
327 |         } catch {
328 |             LoggerHelper.shared.error("Error converting buffer: \(error)")
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:327:11: warning: 'catch' block is unreachable because no errors are thrown in 'do' block
325 |         do {
326 |             try converter.convert(to: convertedBuffer, error: nil, withInputFrom: inputBlock)
327 |         } catch {
    |           `- warning: 'catch' block is unreachable because no errors are thrown in 'do' block
328 |             LoggerHelper.shared.error("Error converting buffer: \(error)")
329 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:84:18: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 82 |             audioEngine.prepare()
 83 |             try audioEngine.start()
 84 |             Task {
    |                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 85 |                 await self.processAudioSamples()
    |                       `- note: closure captures 'self' which is accessible to code in the current task
 86 |             }
 87 |         } catch {
[409/424] Compiling StreamUI createStreamUIRecorder.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:94:13: warning: no 'async' operations occur within 'await' expression
 92 |     private func processAudioSamples() async {
 93 |         for await audioSample in audioStream.stream {
 94 |             await appendAudioBuffer(audioSample.buffer, at: audioSample.time)
    |             `- warning: no 'async' operations occur within 'await' expression
 95 |         }
 96 |     }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:215:20: warning: value 'frameTime' was defined but never used; consider replacing with boolean test
213 |         playerNode.installTap(onBus: 0, bufferSize: bufferSize, format: commonFormat) { [weak self] buffer, when in
214 |
215 |             if let frameTime = self?.frameTimer?.getCurrentFrameTime() {
    |                    `- warning: value 'frameTime' was defined but never used; consider replacing with boolean test
216 |                 self?.addToStream(buffer, at: when.toCMTime())
217 |             }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:252:17: warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
250 |             }
251 |
252 |             dst.assign(from: src.advanced(by: Int(start)), count: Int(frameCount))
    |                 |- warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
    |                 `- note: use 'update(from:count:)' instead
253 |         }
254 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:243:13: warning: initialization of immutable value 'sampleSize' was never used; consider replacing with assignment to '_' or removing it
241 |
242 |         let channelCount = buffer.format.channelCount
243 |         let sampleSize = buffer.format.streamDescription.pointee.mBytesPerFrame / UInt32(channelCount)
    |             `- warning: initialization of immutable value 'sampleSize' was never used; consider replacing with assignment to '_' or removing it
244 |
245 |         for channel in 0 ..< channelCount {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:326:13: warning: no calls to throwing functions occur within 'try' expression
324 |
325 |         do {
326 |             try converter.convert(to: convertedBuffer, error: nil, withInputFrom: inputBlock)
    |             `- warning: no calls to throwing functions occur within 'try' expression
327 |         } catch {
328 |             LoggerHelper.shared.error("Error converting buffer: \(error)")
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:327:11: warning: 'catch' block is unreachable because no errors are thrown in 'do' block
325 |         do {
326 |             try converter.convert(to: convertedBuffer, error: nil, withInputFrom: inputBlock)
327 |         } catch {
    |           `- warning: 'catch' block is unreachable because no errors are thrown in 'do' block
328 |             LoggerHelper.shared.error("Error converting buffer: \(error)")
329 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:84:18: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 82 |             audioEngine.prepare()
 83 |             try audioEngine.start()
 84 |             Task {
    |                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 85 |                 await self.processAudioSamples()
    |                       `- note: closure captures 'self' which is accessible to code in the current task
 86 |             }
 87 |         } catch {
[410/424] Compiling StreamUI AudioRecorder.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:94:13: warning: no 'async' operations occur within 'await' expression
 92 |     private func processAudioSamples() async {
 93 |         for await audioSample in audioStream.stream {
 94 |             await appendAudioBuffer(audioSample.buffer, at: audioSample.time)
    |             `- warning: no 'async' operations occur within 'await' expression
 95 |         }
 96 |     }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:215:20: warning: value 'frameTime' was defined but never used; consider replacing with boolean test
213 |         playerNode.installTap(onBus: 0, bufferSize: bufferSize, format: commonFormat) { [weak self] buffer, when in
214 |
215 |             if let frameTime = self?.frameTimer?.getCurrentFrameTime() {
    |                    `- warning: value 'frameTime' was defined but never used; consider replacing with boolean test
216 |                 self?.addToStream(buffer, at: when.toCMTime())
217 |             }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:252:17: warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
250 |             }
251 |
252 |             dst.assign(from: src.advanced(by: Int(start)), count: Int(frameCount))
    |                 |- warning: 'assign(from:count:)' is deprecated: renamed to 'update(from:count:)'
    |                 `- note: use 'update(from:count:)' instead
253 |         }
254 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:243:13: warning: initialization of immutable value 'sampleSize' was never used; consider replacing with assignment to '_' or removing it
241 |
242 |         let channelCount = buffer.format.channelCount
243 |         let sampleSize = buffer.format.streamDescription.pointee.mBytesPerFrame / UInt32(channelCount)
    |             `- warning: initialization of immutable value 'sampleSize' was never used; consider replacing with assignment to '_' or removing it
244 |
245 |         for channel in 0 ..< channelCount {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:326:13: warning: no calls to throwing functions occur within 'try' expression
324 |
325 |         do {
326 |             try converter.convert(to: convertedBuffer, error: nil, withInputFrom: inputBlock)
    |             `- warning: no calls to throwing functions occur within 'try' expression
327 |         } catch {
328 |             LoggerHelper.shared.error("Error converting buffer: \(error)")
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:327:11: warning: 'catch' block is unreachable because no errors are thrown in 'do' block
325 |         do {
326 |             try converter.convert(to: convertedBuffer, error: nil, withInputFrom: inputBlock)
327 |         } catch {
    |           `- warning: 'catch' block is unreachable because no errors are thrown in 'do' block
328 |             LoggerHelper.shared.error("Error converting buffer: \(error)")
329 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/AudioRecorder/AudioRecorder.swift:84:18: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 82 |             audioEngine.prepare()
 83 |             try audioEngine.start()
 84 |             Task {
    |                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 85 |                 await self.processAudioSamples()
    |                       `- note: closure captures 'self' which is accessible to code in the current task
 86 |             }
 87 |         } catch {
[411/424] Compiling StreamUI LoggerHelper.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/LoggerHelper.swift:13:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | // Singleton Logger Helper Class
11 | class LoggerHelper {
   |       `- note: class 'LoggerHelper' does not conform to the 'Sendable' protocol
12 |     // Shared instance
13 |     static let shared = LoggerHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |     // Private logger instance
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:7:5: warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     `- warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDevice.h:434:11: note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 432 |  */
 433 | API_AVAILABLE(macos(10.11), ios(8.0))
 434 | @protocol MTLDevice <NSObject>
     |           `- note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 435 |
 436 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 3 | import CoreImage
 4 | import CoreVideo
 5 | import Metal
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     |- note: add '@MainActor' to make let 'metalDevice' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:8:5: warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     `- warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIContext.h:36:12: note: class 'CIContext' does not conform to the 'Sendable' protocol
 34 |
 35 | NS_CLASS_AVAILABLE(10_4, 5_0)
 36 | @interface CIContext : NSObject
    |            `- note: class 'CIContext' does not conform to the 'Sendable' protocol
 37 | {
 38 |     void *_priv;
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 1 |
 2 |
 3 | import CoreImage
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 4 | import CoreVideo
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     |- note: add '@MainActor' to make let 'ciContext' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:14:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
11 | import Nuke
12 |
13 | class PreloadManager {
   |       `- note: class 'PreloadManager' does not conform to the 'Sendable' protocol
14 |     static let shared = PreloadManager()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     private let imagePrefetcher: ImagePrefetcher
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:33:33: warning: result of call to 'image(for:)' is unused
31 |     // Preload images using Nuke
32 |     func preloadImage(from url: URL) async throws {
33 |         try await imagePipeline.image(for: url)
   |                                 `- warning: result of call to 'image(for:)' is unused
34 |     }
35 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:63:23: warning: result of call to 'preloadMedia(from:)' is unused
61 |             try await preloadImage(from: url)
62 |         } else {
63 |             try await preloadMedia(from: url)
   |                       `- warning: result of call to 'preloadMedia(from:)' is unused
64 |         }
65 |     }
[412/424] Compiling StreamUI MetalRenderer.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/LoggerHelper.swift:13:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | // Singleton Logger Helper Class
11 | class LoggerHelper {
   |       `- note: class 'LoggerHelper' does not conform to the 'Sendable' protocol
12 |     // Shared instance
13 |     static let shared = LoggerHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |     // Private logger instance
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:7:5: warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     `- warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDevice.h:434:11: note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 432 |  */
 433 | API_AVAILABLE(macos(10.11), ios(8.0))
 434 | @protocol MTLDevice <NSObject>
     |           `- note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 435 |
 436 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 3 | import CoreImage
 4 | import CoreVideo
 5 | import Metal
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     |- note: add '@MainActor' to make let 'metalDevice' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:8:5: warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     `- warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIContext.h:36:12: note: class 'CIContext' does not conform to the 'Sendable' protocol
 34 |
 35 | NS_CLASS_AVAILABLE(10_4, 5_0)
 36 | @interface CIContext : NSObject
    |            `- note: class 'CIContext' does not conform to the 'Sendable' protocol
 37 | {
 38 |     void *_priv;
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 1 |
 2 |
 3 | import CoreImage
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 4 | import CoreVideo
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     |- note: add '@MainActor' to make let 'ciContext' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:14:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
11 | import Nuke
12 |
13 | class PreloadManager {
   |       `- note: class 'PreloadManager' does not conform to the 'Sendable' protocol
14 |     static let shared = PreloadManager()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     private let imagePrefetcher: ImagePrefetcher
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:33:33: warning: result of call to 'image(for:)' is unused
31 |     // Preload images using Nuke
32 |     func preloadImage(from url: URL) async throws {
33 |         try await imagePipeline.image(for: url)
   |                                 `- warning: result of call to 'image(for:)' is unused
34 |     }
35 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:63:23: warning: result of call to 'preloadMedia(from:)' is unused
61 |             try await preloadImage(from: url)
62 |         } else {
63 |             try await preloadMedia(from: url)
   |                       `- warning: result of call to 'preloadMedia(from:)' is unused
64 |         }
65 |     }
[413/424] Compiling StreamUI PreloadManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/LoggerHelper.swift:13:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | // Singleton Logger Helper Class
11 | class LoggerHelper {
   |       `- note: class 'LoggerHelper' does not conform to the 'Sendable' protocol
12 |     // Shared instance
13 |     static let shared = LoggerHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LoggerHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |     // Private logger instance
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:7:5: warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     `- warning: let 'metalDevice' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDevice.h:434:11: note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 432 |  */
 433 | API_AVAILABLE(macos(10.11), ios(8.0))
 434 | @protocol MTLDevice <NSObject>
     |           `- note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 435 |
 436 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 3 | import CoreImage
 4 | import CoreVideo
 5 | import Metal
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
   |     |- note: add '@MainActor' to make let 'metalDevice' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
 9 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:8:5: warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     `- warning: let 'ciContext' is not concurrency-safe because non-'Sendable' type 'CIContext' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIContext.h:36:12: note: class 'CIContext' does not conform to the 'Sendable' protocol
 34 |
 35 | NS_CLASS_AVAILABLE(10_4, 5_0)
 36 | @interface CIContext : NSObject
    |            `- note: class 'CIContext' does not conform to the 'Sendable' protocol
 37 | {
 38 |     void *_priv;
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/MetalRenderer.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 1 |
 2 |
 3 | import CoreImage
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreImage'
 4 | import CoreVideo
 5 | import Metal
 6 |
 7 | let metalDevice = MTLCreateSystemDefaultDevice()
 8 | let ciContext = CIContext(mtlDevice: metalDevice!, options: [.cacheIntermediates: false, .priorityRequestLow: true])
   |     |- note: add '@MainActor' to make let 'ciContext' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |
10 | public func pixelBufferFromCGImage(_ image: CGImage, width: Int, height: Int) -> CVPixelBuffer? {
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:14:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
11 | import Nuke
12 |
13 | class PreloadManager {
   |       `- note: class 'PreloadManager' does not conform to the 'Sendable' protocol
14 |     static let shared = PreloadManager()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreloadManager' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     private let imagePrefetcher: ImagePrefetcher
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:33:33: warning: result of call to 'image(for:)' is unused
31 |     // Preload images using Nuke
32 |     func preloadImage(from url: URL) async throws {
33 |         try await imagePipeline.image(for: url)
   |                                 `- warning: result of call to 'image(for:)' is unused
34 |     }
35 |
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Helpers/PreloadManager.swift:63:23: warning: result of call to 'preloadMedia(from:)' is unused
61 |             try await preloadImage(from: url)
62 |         } else {
63 |             try await preloadMedia(from: url)
   |                       `- warning: result of call to 'preloadMedia(from:)' is unused
64 |         }
65 |     }
[414/424] Compiling StreamUI HUD.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/Internal/HUD.swift:36:67: warning: left side of nil coalescing operator '??' has non-optional type 'TimeInterval' (aka 'Double'), so the right side is never used
34 |         }
35 |         let elapsedTime = recorder.controlledClock.elapsedTime
36 |         let elapsedTimeFormatted = formatTimeInterval(elapsedTime ?? 0)
   |                                                                   `- warning: left side of nil coalescing operator '??' has non-optional type 'TimeInterval' (aka 'Double'), so the right side is never used
37 |         let stateEmoji = getStateEmoji(for: recorder.state)
38 |         let frameCount = recorder.frameTimer.frameCount
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/Internal/HUD.swift:54:13: warning: initialization of immutable value 'text' was never used; consider replacing with assignment to '_' or removing it
52 |         """
53 |
54 |         let text = "hello"
   |             `- warning: initialization of immutable value 'text' was never used; consider replacing with assignment to '_' or removing it
55 |
56 |         console.clear(lines: 5)
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingImage.swift:50:58: warning: non-sendable result type 'PlatformImage' (aka 'NSImage') cannot be sent from nonisolated context in call to instance method 'image(from:)'; this is an error in the Swift 6 language mode
48 |
49 |         do {
50 |             self.image = try await PreloadManager.shared.image(from: url)
   |                                                          `- warning: non-sendable result type 'PlatformImage' (aka 'NSImage') cannot be sent from nonisolated context in call to instance method 'image(from:)'; this is an error in the Swift 6 language mode
51 |         } catch {
52 |             LoggerHelper.shared.error("Failed to preload image: \(error)")
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSImage.h:66:12: note: class 'NSImage' does not conform to the 'Sendable' protocol
 64 | __attribute__((objc_subclassing_restricted))
 65 | #endif /* NSIMAGE_UNAVAILABLE_MACCATALYST */
 66 | @interface NSImage : NSObject
    |            `- note: class 'NSImage' does not conform to the 'Sendable' protocol
 67 |
 68 | #pragma mark - Initialization
[415/424] Compiling StreamUI SizedView.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/Internal/HUD.swift:36:67: warning: left side of nil coalescing operator '??' has non-optional type 'TimeInterval' (aka 'Double'), so the right side is never used
34 |         }
35 |         let elapsedTime = recorder.controlledClock.elapsedTime
36 |         let elapsedTimeFormatted = formatTimeInterval(elapsedTime ?? 0)
   |                                                                   `- warning: left side of nil coalescing operator '??' has non-optional type 'TimeInterval' (aka 'Double'), so the right side is never used
37 |         let stateEmoji = getStateEmoji(for: recorder.state)
38 |         let frameCount = recorder.frameTimer.frameCount
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/Internal/HUD.swift:54:13: warning: initialization of immutable value 'text' was never used; consider replacing with assignment to '_' or removing it
52 |         """
53 |
54 |         let text = "hello"
   |             `- warning: initialization of immutable value 'text' was never used; consider replacing with assignment to '_' or removing it
55 |
56 |         console.clear(lines: 5)
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingImage.swift:50:58: warning: non-sendable result type 'PlatformImage' (aka 'NSImage') cannot be sent from nonisolated context in call to instance method 'image(from:)'; this is an error in the Swift 6 language mode
48 |
49 |         do {
50 |             self.image = try await PreloadManager.shared.image(from: url)
   |                                                          `- warning: non-sendable result type 'PlatformImage' (aka 'NSImage') cannot be sent from nonisolated context in call to instance method 'image(from:)'; this is an error in the Swift 6 language mode
51 |         } catch {
52 |             LoggerHelper.shared.error("Failed to preload image: \(error)")
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSImage.h:66:12: note: class 'NSImage' does not conform to the 'Sendable' protocol
 64 | __attribute__((objc_subclassing_restricted))
 65 | #endif /* NSIMAGE_UNAVAILABLE_MACCATALYST */
 66 | @interface NSImage : NSObject
    |            `- note: class 'NSImage' does not conform to the 'Sendable' protocol
 67 |
 68 | #pragma mark - Initialization
[416/424] Compiling StreamUI StreamingImage.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/Internal/HUD.swift:36:67: warning: left side of nil coalescing operator '??' has non-optional type 'TimeInterval' (aka 'Double'), so the right side is never used
34 |         }
35 |         let elapsedTime = recorder.controlledClock.elapsedTime
36 |         let elapsedTimeFormatted = formatTimeInterval(elapsedTime ?? 0)
   |                                                                   `- warning: left side of nil coalescing operator '??' has non-optional type 'TimeInterval' (aka 'Double'), so the right side is never used
37 |         let stateEmoji = getStateEmoji(for: recorder.state)
38 |         let frameCount = recorder.frameTimer.frameCount
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/Internal/HUD.swift:54:13: warning: initialization of immutable value 'text' was never used; consider replacing with assignment to '_' or removing it
52 |         """
53 |
54 |         let text = "hello"
   |             `- warning: initialization of immutable value 'text' was never used; consider replacing with assignment to '_' or removing it
55 |
56 |         console.clear(lines: 5)
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Components/StreamingImage.swift:50:58: warning: non-sendable result type 'PlatformImage' (aka 'NSImage') cannot be sent from nonisolated context in call to instance method 'image(from:)'; this is an error in the Swift 6 language mode
48 |
49 |         do {
50 |             self.image = try await PreloadManager.shared.image(from: url)
   |                                                          `- warning: non-sendable result type 'PlatformImage' (aka 'NSImage') cannot be sent from nonisolated context in call to instance method 'image(from:)'; this is an error in the Swift 6 language mode
51 |         } catch {
52 |             LoggerHelper.shared.error("Failed to preload image: \(error)")
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSImage.h:66:12: note: class 'NSImage' does not conform to the 'Sendable' protocol
 64 | __attribute__((objc_subclassing_restricted))
 65 | #endif /* NSIMAGE_UNAVAILABLE_MACCATALYST */
 66 | @interface NSImage : NSObject
    |            `- note: class 'NSImage' does not conform to the 'Sendable' protocol
 67 |
 68 | #pragma mark - Initialization
[417/424] Compiling StreamUI VideoRecorder.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/StreamUI.swift:169:10: warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
167 |         .frame(width: NSScreen.main?.visibleFrame.width ?? 800 * 0.9,
168 |                height: NSScreen.main?.visibleFrame.height ?? 600 * 0.9)
169 |         .onChange(of: recorder.state) { recorderState in
    |          `- warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
170 |             if recorderState == .finished {
171 |                 isVideoSaved = recorder.renderSettings.saveVideoFile
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/StreamUI.swift:251:10: warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
249 |             isAnimating = state == .recording
250 |         }
251 |         .onChange(of: state) { newState in
    |          `- warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
252 |             isAnimating = newState == .recording
253 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/VideoRecorder/VideoRecorder.swift:59:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
57 |
58 |     func startProcessingQueue() {
59 |         processingTask = Task {
   |                               `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
60 |             for await videoFrame in frameStream.stream {
   |                                     `- note: closure captures 'self' which is accessible to code in the current task
61 |                 guard !Task.isCancelled else { break }
62 |                 self.processFrame(cgImage: videoFrame.image, frameTime: videoFrame.time)
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/StreamUI.swift:126:56: warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
124 |                                     recorder.stopRecording()
125 |                                     Task {
126 |                                         await recorder.waitForRecordingCompletion()
    |                                                        |- warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
    |                                                        `- note: sending main actor-isolated 'self.recorder' to nonisolated instance method 'waitForRecordingCompletion()' risks causing data races between nonisolated and main actor-isolated uses
127 |                                     }
128 |                                 } else {
[418/424] Compiling StreamUI StreamUI.swift
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/StreamUI.swift:169:10: warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
167 |         .frame(width: NSScreen.main?.visibleFrame.width ?? 800 * 0.9,
168 |                height: NSScreen.main?.visibleFrame.height ?? 600 * 0.9)
169 |         .onChange(of: recorder.state) { recorderState in
    |          `- warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
170 |             if recorderState == .finished {
171 |                 isVideoSaved = recorder.renderSettings.saveVideoFile
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/StreamUI.swift:251:10: warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
249 |             isAnimating = state == .recording
250 |         }
251 |         .onChange(of: state) { newState in
    |          `- warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
252 |             isAnimating = newState == .recording
253 |         }
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Recorders/VideoRecorder/VideoRecorder.swift:59:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
57 |
58 |     func startProcessingQueue() {
59 |         processingTask = Task {
   |                               `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
60 |             for await videoFrame in frameStream.stream {
   |                                     `- note: closure captures 'self' which is accessible to code in the current task
61 |                 guard !Task.isCancelled else { break }
62 |                 self.processFrame(cgImage: videoFrame.image, frameTime: videoFrame.time)
/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/StreamUI.swift:126:56: warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
124 |                                     recorder.stopRecording()
125 |                                     Task {
126 |                                         await recorder.waitForRecordingCompletion()
    |                                                        |- warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
    |                                                        `- note: sending main actor-isolated 'self.recorder' to nonisolated instance method 'waitForRecordingCompletion()' risks causing data races between nonisolated and main actor-isolated uses
127 |                                     }
128 |                                 } else {
[419/424] Compiling StreamUI StreamingLoadingIndicator.swift
[420/424] Compiling StreamUI StreamingMediaPlayer.swift
[421/424] Compiling StreamUI StreamingProgressView.swift
[422/433] Compiling VideoViews WebViewTestView.swift
[423/433] Compiling VideoViews VideoTestView.swift
[424/433] Compiling VideoViews BasicCounterView.swift
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/BasicCounterView.swift:29:30: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
 27 |                 .padding()
 28 |
 29 |             Text("Counter: \(recorder?.controlledClock.elapsedTime)")
    |                              |                         |- note: use 'String(describing:)' to silence this warning
    |                              |                         `- note: provide a default value to avoid this warning
    |                              `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
 30 |                 .font(.largeTitle)
 31 |                 .foregroundColor(.green)
[425/433] Compiling VideoViews SceneKitTestView.swift
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:22:24: warning: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 20 |
 21 |     init(size: CGSize, contentProvider: SceneKitContentProvider) {
 22 |         self.scnView = SCNView(frame: CGRect(origin: .zero, size: size))
    |                        `- warning: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 23 |         contentProvider.setupScene(in: self.scnView)
 24 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:83:1: note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
 81 | @interface NSView : NSResponder <NSAnimatablePropertyContainer, NSUserInterfaceItemIdentification, NSDraggingDestination, NSAppearanceCustomization, NSAccessibilityElement, NSAccessibility>
 82 |
 83 | - (instancetype)initWithFrame:(NSRect)frameRect NS_DESIGNATED_INITIALIZER;
    | |- note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
    | `- note: main actor isolation inferred from inheritance from class 'NSView'
 84 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
 85 |
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:28:26: warning: expression implicitly coerced from 'NSImage?' to 'Any'
 26 |     func updateSnapshot() {
 27 |         self.snapshotImage = self.scnView.snapshot()
 28 |         print("snapper", self.snapshotImage)
    |                          |    |- note: provide a default value to avoid this warning
    |                          |    |- note: force-unwrap the value to avoid this warning
    |                          |    `- note: explicitly cast to 'Any' with 'as Any' to silence this warning
    |                          `- warning: expression implicitly coerced from 'NSImage?' to 'Any'
 29 |         self.frameCount += 1
 30 |     }
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:27:43: warning: call to main actor-isolated instance method 'snapshot()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 24 |     }
 25 |
 26 |     func updateSnapshot() {
    |          `- note: add '@MainActor' to make instance method 'updateSnapshot()' part of global actor 'MainActor'
 27 |         self.snapshotImage = self.scnView.snapshot()
    |                                           `- warning: call to main actor-isolated instance method 'snapshot()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 28 |         print("snapper", self.snapshotImage)
 29 |         self.frameCount += 1
SceneKit.SCNView.snapshot:3:24: note: calls to instance method 'snapshot()' from outside of its actor context are implicitly asynchronous
1 | class SCNView {
2 | @available(macOS 10.10, *)
3 |   @MainActor open func snapshot() -> NSImage}
  |                        |- note: calls to instance method 'snapshot()' from outside of its actor context are implicitly asynchronous
  |                        `- note: main actor isolation inferred from inheritance from class 'NSView'
4 |
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:56:17: warning: main actor-isolated property 'renderer' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 32 |
 33 | struct SceneKitSnapshotView: View {
 34 |     @StateObject private var renderer: SceneKitRenderer
    |                              `- note: property declared here
 35 |     @State private var timer: Timer?
 36 |
    :
 54 |             timer = Timer.scheduledTimer(withTimeInterval: 1.0 / 30.0, repeats: true) { _ in
 55 |                 print("Timer fired")
 56 |                 renderer.updateSnapshot()
    |                 `- warning: main actor-isolated property 'renderer' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 57 |             }
 58 |         }
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:91:14: warning: main actor-isolated property 'scene' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 64 |
 65 | struct ChildSceneKitView: SceneKitContentProvider {
 66 |     func setupScene(in view: SCNView) {
    |          `- note: add '@MainActor' to make instance method 'setupScene(in:)' part of global actor 'MainActor'
 67 |         let scene = SCNScene()
 68 |
    :
 89 |         ballNode.addAnimation(animation, forKey: "position")
 90 |
 91 |         view.scene = scene
    |              `- warning: main actor-isolated property 'scene' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 92 |         view.allowsCameraControl = true
 93 |         view.autoenablesDefaultLighting = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/SceneKit.framework/Headers/SCNView.h:72:50: note: mutation of this property is only permitted within the actor
 70 |  @abstract Specifies the scene of the receiver
 71 |  */
 72 | @property(nonatomic, retain, nullable) SCNScene *scene;
    |                                                  `- note: mutation of this property is only permitted within the actor
 73 |
 74 | /*!
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:92:14: warning: main actor-isolated property 'allowsCameraControl' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 64 |
 65 | struct ChildSceneKitView: SceneKitContentProvider {
 66 |     func setupScene(in view: SCNView) {
    |          `- note: add '@MainActor' to make instance method 'setupScene(in:)' part of global actor 'MainActor'
 67 |         let scene = SCNScene()
 68 |
    :
 90 |
 91 |         view.scene = scene
 92 |         view.allowsCameraControl = true
    |              `- warning: main actor-isolated property 'allowsCameraControl' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 93 |         view.autoenablesDefaultLighting = true
 94 |         view.backgroundColor = .black
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/SceneKit.framework/Headers/SCNView.h:102:27: note: mutation of this property is only permitted within the actor
100 |        - alt + pinch gesture (trackpad only) to zoom-in / zoom-out (change the field of view of the camera)
101 |  */
102 | @property(nonatomic) BOOL allowsCameraControl;
    |                           `- note: mutation of this property is only permitted within the actor
103 |
104 | /*!
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:93:14: warning: main actor-isolated property 'autoenablesDefaultLighting' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 64 |
 65 | struct ChildSceneKitView: SceneKitContentProvider {
 66 |     func setupScene(in view: SCNView) {
    |          `- note: add '@MainActor' to make instance method 'setupScene(in:)' part of global actor 'MainActor'
 67 |         let scene = SCNScene()
 68 |
    :
 91 |         view.scene = scene
 92 |         view.allowsCameraControl = true
 93 |         view.autoenablesDefaultLighting = true
    |              `- warning: main actor-isolated property 'autoenablesDefaultLighting' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 94 |         view.backgroundColor = .black
 95 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/SceneKit.framework/Headers/SCNSceneRenderer.h:169:27: note: mutation of this property is only permitted within the actor
167 |  @discussion When enabled, a diffuse light is automatically added and placed while rendering scenes that have no light or only ambient lights.
168 |  */
169 | @property(nonatomic) BOOL autoenablesDefaultLighting;
    |                           `- note: mutation of this property is only permitted within the actor
170 |
171 | /*!
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:94:14: warning: main actor-isolated property 'backgroundColor' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 64 |
 65 | struct ChildSceneKitView: SceneKitContentProvider {
 66 |     func setupScene(in view: SCNView) {
    |          `- note: add '@MainActor' to make instance method 'setupScene(in:)' part of global actor 'MainActor'
 67 |         let scene = SCNScene()
 68 |
    :
 92 |         view.allowsCameraControl = true
 93 |         view.autoenablesDefaultLighting = true
 94 |         view.backgroundColor = .black
    |              `- warning: main actor-isolated property 'backgroundColor' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 95 |     }
 96 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/SceneKit.framework/Headers/SCNView.h:85:37: note: mutation of this property is only permitted within the actor
 83 |  @abstract Specifies the background color of the receiver. Defaults to opaque white.
 84 |  */
 85 | @property(nonatomic, copy) NSColor *backgroundColor;
    |                                     `- note: mutation of this property is only permitted within the actor
 86 |
 87 | /*!
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SceneKitTestView.swift:317:10: warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
315 |             Text("Frame: \(recorder?.frameTimer.frameCount ?? 0)")
316 |         }
317 |         .onChange(of: recorder?.frameTimer.frameCount) { _ in
    |          `- warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
318 |             updateBallPosition()
319 |         }
[426/433] Compiling VideoViews ImageTestView.swift
[427/433] Emitting module VideoViews
[428/433] Compiling VideoViews SoundTestView.swift
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SoundTestView.swift:30:37: warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
28 |             Task {
29 |                 print("going to load")
30 |                 try await recorder?.loadAudio(from: shortAudioURL)
   |                                     |- warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
   |                                     `- note: sending main actor-isolated 'self.recorder' to nonisolated instance method 'loadAudio(from:)' risks causing data races between nonisolated and main actor-isolated uses
31 |                 try await recorder?.loadAudio(from: bonusAudioURL)
32 |                 print("loaded audio")
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SoundTestView.swift:31:37: warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
29 |                 print("going to load")
30 |                 try await recorder?.loadAudio(from: shortAudioURL)
31 |                 try await recorder?.loadAudio(from: bonusAudioURL)
   |                                     |- warning: sending 'self.recorder' risks causing data races; this is an error in the Swift 6 language mode
   |                                     `- note: sending main actor-isolated 'self.recorder' to nonisolated instance method 'loadAudio(from:)' risks causing data races between nonisolated and main actor-isolated uses
32 |                 print("loaded audio")
33 |
[429/433] Compiling VideoViews RandomSwiftUIComponentsTestView.swift
[430/433] Compiling VideoViews SpriteKitTestView.swift
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SpriteKitTestView.swift:237:33: warning: expression implicitly coerced from 'Int?' to 'Any'
235 |
236 |     var newFrameCount: Int {
237 |         print("recorder count", recorder?.frameTimer.frameCount)
    |                                 |                    |- note: provide a default value to avoid this warning
    |                                 |                    |- note: force-unwrap the value to avoid this warning
    |                                 |                    `- note: explicitly cast to 'Any' with 'as Any' to silence this warning
    |                                 `- warning: expression implicitly coerced from 'Int?' to 'Any'
238 |         return 10
239 |     }
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SpriteKitTestView.swift:271:38: warning: expression implicitly coerced from 'Int?' to 'Any'
269 |         }
270 |         .onChange(of: recorder?.frameTimer.frameCount) { newCount in
271 |             print("new frame count", recorder?.frameTimer.frameCount, newCount)
    |                                      |                    |- note: provide a default value to avoid this warning
    |                                      |                    |- note: force-unwrap the value to avoid this warning
    |                                      |                    `- note: explicitly cast to 'Any' with 'as Any' to silence this warning
    |                                      `- warning: expression implicitly coerced from 'Int?' to 'Any'
272 |             updateCircleAnimation()
273 |         }
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SpriteKitTestView.swift:271:71: warning: expression implicitly coerced from 'Int?' to 'Any'
269 |         }
270 |         .onChange(of: recorder?.frameTimer.frameCount) { newCount in
271 |             print("new frame count", recorder?.frameTimer.frameCount, newCount)
    |                                                                       |- warning: expression implicitly coerced from 'Int?' to 'Any'
    |                                                                       |- note: provide a default value to avoid this warning
    |                                                                       |- note: force-unwrap the value to avoid this warning
    |                                                                       `- note: explicitly cast to 'Any' with 'as Any' to silence this warning
272 |             updateCircleAnimation()
273 |         }
/Users/admin/builder/spi-builder-workspace/Examples/VideoViews/SpriteKitTestView.swift:270:10: warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
268 |                 }
269 |         }
270 |         .onChange(of: recorder?.frameTimer.frameCount) { newCount in
    |          `- warning: 'onChange(of:perform:)' was deprecated in macOS 14.0: Use `onChange` with a two or zero parameter action closure instead.
271 |             print("new frame count", recorder?.frameTimer.frameCount, newCount)
272 |             updateCircleAnimation()
[431/435] Compiling CLIExample index.swift
[432/435] Emitting module CLIExample
[432/435] Write Objects.LinkFileList
[433/435] Linking CLIExample
[434/435] Applying CLIExample
Build complete! (29.16s)
warning: 'haishinkit.swift': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/.build/checkouts/HaishinKit.swift/Sources/SwiftPMSupport/dummy.m
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.4.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.5.4",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "haishinkit.swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.9.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/shogo4405/HaishinKit.swift.git"
    },
    {
      "identity" : "stencil",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.15.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/stencilproject/Stencil.git"
    },
    {
      "identity" : "swift-clocks",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-clocks.git"
    },
    {
      "identity" : "nuke",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "12.7.3",
            "upper_bound" : "13.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kean/Nuke.git"
    },
    {
      "identity" : "console-kit",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.14.3",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/vapor/console-kit.git"
    }
  ],
  "manifest_display_name" : "StreamUI",
  "name" : "StreamUI",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "StreamUI",
      "targets" : [
        "StreamUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "CLIExample",
      "targets" : [
        "CLIExample"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "VideoViews",
      "targets" : [
        "VideoViews"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "GenerateTemplate",
      "targets" : [
        "GenerateTemplate"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "VideoViews",
      "module_type" : "SwiftTarget",
      "name" : "VideoViews",
      "path" : "Examples/VideoViews",
      "product_memberships" : [
        "CLIExample",
        "VideoViews"
      ],
      "sources" : [
        "BasicCounterView.swift",
        "ImageTestView.swift",
        "RandomSwiftUIComponentsTestView.swift",
        "SceneKitTestView.swift",
        "SoundTestView.swift",
        "SpriteKitTestView.swift",
        "VideoTestView.swift",
        "WebViewTestView.swift"
      ],
      "target_dependencies" : [
        "StreamUI"
      ],
      "type" : "library"
    },
    {
      "c99name" : "StreamUITests",
      "module_type" : "SwiftTarget",
      "name" : "StreamUITests",
      "path" : "Tests/StreamUITests",
      "sources" : [
        "StreamUITests.swift"
      ],
      "target_dependencies" : [
        "StreamUI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "StreamUI",
      "module_type" : "SwiftTarget",
      "name" : "StreamUI",
      "path" : "Sources/StreamUI",
      "product_dependencies" : [
        "HaishinKit",
        "Logging",
        "Clocks",
        "Nuke",
        "ConsoleKit"
      ],
      "product_memberships" : [
        "StreamUI",
        "CLIExample",
        "VideoViews"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Resources/discord.png",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Resources/github.png",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/StreamUI/Resources/x.png",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Components/Internal/HUD.swift",
        "Components/Internal/SizedView.swift",
        "Components/StreamingImage.swift",
        "Components/StreamingLoadingIndicator.swift",
        "Components/StreamingMediaPlayer.swift",
        "Components/StreamingProgressView.swift",
        "Components/StreamingVideoPlayer.swift",
        "Extensions/AVAudioTime+Extensions.swift",
        "Extensions/Duration+Extensions.swift",
        "Extensions/Image+Extension.swift",
        "Helpers/ControlledClock.swift",
        "Helpers/FrameTimer.swift",
        "Helpers/LoggerHelper.swift",
        "Helpers/MetalRenderer.swift",
        "Helpers/PreloadManager.swift",
        "Helpers/RecorderKeys.swift",
        "Helpers/RenderSettings.swift",
        "Helpers/Streams/AudioStream.swift",
        "Helpers/Streams/FrameStream.swift",
        "Helpers/createStreamUIRecorder.swift",
        "Recorders/AudioRecorder/AudioRecorder.swift",
        "Recorders/Recorder.swift",
        "Recorders/VideoRecorder/Extensions/createCMSampleBuffer.swift",
        "Recorders/VideoRecorder/VideoRecorder.swift",
        "StreamUI.swift",
        "Streaming/RTMPStreaming.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GenerateTemplate",
      "module_type" : "SwiftTarget",
      "name" : "GenerateTemplate",
      "path" : "Scripts/GenerateTemplate",
      "product_dependencies" : [
        "Stencil",
        "ArgumentParser",
        "Logging"
      ],
      "product_memberships" : [
        "GenerateTemplate"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Scripts/GenerateTemplate/Templates/Package.swift.stencil",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Scripts/GenerateTemplate/Templates/main.swift.stencil",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "index.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "CLIExample",
      "module_type" : "SwiftTarget",
      "name" : "CLIExample",
      "path" : "Examples/CLIExample",
      "product_dependencies" : [
        "ArgumentParser"
      ],
      "product_memberships" : [
        "CLIExample"
      ],
      "sources" : [
        "index.swift"
      ],
      "target_dependencies" : [
        "StreamUI",
        "VideoViews"
      ],
      "type" : "executable"
    }
  ],
  "tools_version" : "5.10"
}
Done.