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

Failed to build morsel, reference master (975cdf), with Swift 6.1 for Linux on 25 Apr 2025 15:27:34 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/krad/morsel.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/krad/morsel
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 975cdf9 Updating the docs a bit
Cloned https://github.com/krad/morsel.git
Revision (git rev-parse @):
975cdf97b5733faeb951d53d6d90c98578336031
SUCCESS checkout https://github.com/krad/morsel.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/krad/morsel.git
https://github.com/krad/morsel.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "grip",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.3.5",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/krad/grip.git"
    }
  ],
  "manifest_display_name" : "morsel",
  "name" : "morsel",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "morsel",
      "targets" : [
        "morsel"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "morselTests",
      "module_type" : "SwiftTarget",
      "name" : "morselTests",
      "path" : "Tests/morselTests",
      "product_dependencies" : [
        "grip"
      ],
      "sources" : [
        "CodecTests.swift",
        "FragmentedMP4WriterTests.swift",
        "HLSEventPlaylistTests.swift",
        "HLSLivePlaylistTests.swift",
        "HLSVODPlaylistTests.swift",
        "ISO8601DurationTests.swift",
        "PathHelpers.swift",
        "PlaylistWriterTests.swift",
        "RepresentationTests.swift",
        "StreamSegmenterTests.swift"
      ],
      "target_dependencies" : [
        "morsel"
      ],
      "type" : "test"
    },
    {
      "c99name" : "morsel",
      "module_type" : "SwiftTarget",
      "name" : "morsel",
      "path" : "Sources/morsel",
      "product_dependencies" : [
        "grip"
      ],
      "product_memberships" : [
        "morsel"
      ],
      "sources" : [
        "Atoms/AVC1.swift",
        "Atoms/AVCC.swift",
        "Atoms/COLR.swift",
        "Atoms/DINF.swift",
        "Atoms/DREF.swift",
        "Atoms/ESDS.swift",
        "Atoms/FTYP.swift",
        "Atoms/General.swift",
        "Atoms/HDLR.swift",
        "Atoms/MDAT.swift",
        "Atoms/MDHD.swift",
        "Atoms/MDIA.swift",
        "Atoms/MFHD.swift",
        "Atoms/MINF.swift",
        "Atoms/MOOF.swift",
        "Atoms/MOOV.swift",
        "Atoms/MP4A.swift",
        "Atoms/MVEX.swift",
        "Atoms/MVHD.swift",
        "Atoms/PASP.swift",
        "Atoms/SMHD.swift",
        "Atoms/STBL.swift",
        "Atoms/STCO.swift",
        "Atoms/STSC.swift",
        "Atoms/STSD.swift",
        "Atoms/STSZ.swift",
        "Atoms/STTS.swift",
        "Atoms/TFDT.swift",
        "Atoms/TFHD.swift",
        "Atoms/TKHD.swift",
        "Atoms/TRAF.swift",
        "Atoms/TRAK.swift",
        "Atoms/TREX.swift",
        "Atoms/TRUN.swift",
        "Atoms/VMHD.swift",
        "Codecs.swift",
        "Extensions/NSDateComponents+ISO8601.swift",
        "Extensions/String+Numbers.swift",
        "FileWriterDelegate.swift",
        "FragmentedMP4InitSegment.swift",
        "FragmentedMP4Segment.swift",
        "FragmentedMP4Writer.swift",
        "MOOVConfig.swift",
        "Playlists/HLS/HLSEventPlaylist.swift",
        "Playlists/HLS/HLSLivePlaylist.swift",
        "Playlists/HLS/HLSVODPlaylist.swift",
        "Playlists/Playlist.swift",
        "Playlists/PlaylistWriter.swift",
        "Representation.swift",
        "Sample.swift",
        "Segment.swift",
        "StreamSegmenter.swift",
        "StreamState.swift",
        "ThreadSafeArray.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/krad/grip.git
[1/176] Fetching grip
Fetched https://github.com/krad/grip.git from cache (0.18s)
Computing version for https://github.com/krad/grip.git
Computed https://github.com/krad/grip.git at 1.3.5 (1.00s)
Creating working copy for https://github.com/krad/grip.git
Working copy of https://github.com/krad/grip.git resolved at 1.3.5
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/16] Compiling grip CompressedSample.swift
[5/16] Compiling grip ByteHelpers.swift
[6/17] Emitting module grip
[7/17] Compiling grip BinaryEncodable.swift
[8/17] Compiling grip BinaryEncodableExtensions.swift
[9/17] Compiling grip NALU.swift
[10/17] Compiling grip AudioSamplePacket.swift
[11/17] Compiling grip VideoSamplePacket.swift
[12/17] Compiling grip VideoDimensionsPacket.swift
[13/17] Compiling grip VideoParamSetPacket.swift
[14/17] Compiling grip Packets.swift
[15/17] Compiling grip StreamTypePacket.swift
[16/17] Compiling grip StreamType.swift
[17/17] Compiling grip Writeable.swift
[19/67] Compiling morsel Codecs.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[20/67] Compiling morsel NSDateComponents+ISO8601.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[21/67] Compiling morsel String+Numbers.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[22/67] Compiling morsel FileWriterDelegate.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[23/67] Compiling morsel FragmentedMP4InitSegment.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[24/67] Compiling morsel FragmentedMP4Segment.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[25/67] Compiling morsel FragmentedMP4Writer.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[26/73] Emitting module morsel
[27/73] Compiling morsel Representation.swift
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:54: warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                                      `- warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:23:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
21 |
22 |     internal func remove(at index: Int) {
23 |         q.async(flags: .barrier) { self.array.remove(at: index) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |     }
25 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:27:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
25 |
26 |     internal func removeFirst(n: Int) {
27 |         q.async(flags: .barrier) { self.array.removeFirst(n) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |     }
29 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                        `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:60: warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
[28/73] Compiling morsel Sample.swift
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:54: warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                                      `- warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:23:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
21 |
22 |     internal func remove(at index: Int) {
23 |         q.async(flags: .barrier) { self.array.remove(at: index) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |     }
25 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:27:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
25 |
26 |     internal func removeFirst(n: Int) {
27 |         q.async(flags: .barrier) { self.array.removeFirst(n) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |     }
29 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                        `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:60: warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
[29/73] Compiling morsel Segment.swift
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:54: warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                                      `- warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:23:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
21 |
22 |     internal func remove(at index: Int) {
23 |         q.async(flags: .barrier) { self.array.remove(at: index) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |     }
25 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:27:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
25 |
26 |     internal func removeFirst(n: Int) {
27 |         q.async(flags: .barrier) { self.array.removeFirst(n) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |     }
29 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                        `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:60: warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
[30/73] Compiling morsel StreamSegmenter.swift
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:54: warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                                      `- warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:23:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
21 |
22 |     internal func remove(at index: Int) {
23 |         q.async(flags: .barrier) { self.array.remove(at: index) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |     }
25 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:27:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
25 |
26 |     internal func removeFirst(n: Int) {
27 |         q.async(flags: .barrier) { self.array.removeFirst(n) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |     }
29 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                        `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:60: warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
[31/73] Compiling morsel StreamState.swift
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:54: warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                                      `- warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:23:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
21 |
22 |     internal func remove(at index: Int) {
23 |         q.async(flags: .barrier) { self.array.remove(at: index) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |     }
25 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:27:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
25 |
26 |     internal func removeFirst(n: Int) {
27 |         q.async(flags: .barrier) { self.array.removeFirst(n) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |     }
29 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                        `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:60: warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
[32/73] Compiling morsel ThreadSafeArray.swift
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:19:54: warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
17 |
18 |     internal func append(_ newElement: T) {
19 |         q.async(flags: .barrier) { self.array.append(newElement) }
   |                                                      `- warning: capture of 'newElement' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |     }
21 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:23:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
21 |
22 |     internal func remove(at index: Int) {
23 |         q.async(flags: .barrier) { self.array.remove(at: index) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |     }
25 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:27:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
25 |
26 |     internal func removeFirst(n: Int) {
27 |         q.async(flags: .barrier) { self.array.removeFirst(n) }
   |                                    `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |     }
29 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                        `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
/host/spi-builder-workspace/Sources/morsel/ThreadSafeArray.swift:56:60: warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Dispatch
 3 |
 4 | internal class ThreadSafeArray<T>: Collection {
   |                                `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 5 |
 6 |     var startIndex: Int = 0
   :
54 |     internal subscript(index: Int) -> T {
55 |         set {
56 |             q.async(flags: .barrier) { self.array[index] = newValue }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'T' in a '@Sendable' closure; this is an error in the Swift 6 language mode
57 |         }
58 |
[33/73] Compiling morsel General.swift
[34/73] Compiling morsel HDLR.swift
[35/73] Compiling morsel MDAT.swift
[36/73] Compiling morsel MDHD.swift
[37/73] Compiling morsel MDIA.swift
[38/73] Compiling morsel MFHD.swift
[39/73] Compiling morsel MINF.swift
[40/73] Compiling morsel MOOF.swift
[41/73] Compiling morsel MOOV.swift
[42/73] Compiling morsel MP4A.swift
[43/73] Compiling morsel MVEX.swift
[44/73] Compiling morsel MVHD.swift
[45/73] Compiling morsel PASP.swift
[46/73] Compiling morsel SMHD.swift
[47/73] Compiling morsel STBL.swift
[48/73] Compiling morsel STCO.swift
[49/73] Compiling morsel STSC.swift
[50/73] Compiling morsel STSD.swift
[51/73] Compiling morsel STSZ.swift
[52/73] Compiling morsel STTS.swift
[53/73] Compiling morsel TFDT.swift
[54/73] Compiling morsel AVC1.swift
[55/73] Compiling morsel AVCC.swift
[56/73] Compiling morsel COLR.swift
[57/73] Compiling morsel DINF.swift
[58/73] Compiling morsel DREF.swift
[59/73] Compiling morsel ESDS.swift
[60/73] Compiling morsel FTYP.swift
[61/73] Compiling morsel MOOVConfig.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[62/73] Compiling morsel HLSEventPlaylist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[63/73] Compiling morsel HLSLivePlaylist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[64/73] Compiling morsel HLSVODPlaylist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[65/73] Compiling morsel Playlist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[66/73] Compiling morsel PlaylistWriter.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[67/73] Compiling morsel TFHD.swift
[68/73] Compiling morsel TKHD.swift
[69/73] Compiling morsel TRAF.swift
[70/73] Compiling morsel TRAK.swift
[71/73] Compiling morsel TREX.swift
[72/73] Compiling morsel TRUN.swift
[73/73] Compiling morsel VMHD.swift
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/14] Compiling grip StreamType.swift
[3/15] Compiling grip VideoDimensionsPacket.swift
[4/15] Compiling grip VideoParamSetPacket.swift
[5/15] Compiling grip Packets.swift
[6/15] Compiling grip StreamTypePacket.swift
[7/15] Compiling grip Writeable.swift
[8/15] Compiling grip VideoSamplePacket.swift
[9/15] Compiling grip CompressedSample.swift
[10/15] Compiling grip ByteHelpers.swift
[11/15] Compiling grip NALU.swift
[12/15] Compiling grip AudioSamplePacket.swift
[13/15] Emitting module grip
[14/15] Compiling grip BinaryEncodable.swift
[15/15] Compiling grip BinaryEncodableExtensions.swift
[17/65] Emitting module morsel
[18/71] Compiling morsel MOOF.swift
[19/71] Compiling morsel MOOV.swift
[20/71] Compiling morsel MP4A.swift
[21/71] Compiling morsel MVEX.swift
[22/71] Compiling morsel MVHD.swift
[23/71] Compiling morsel PASP.swift
[24/71] Compiling morsel SMHD.swift
[25/71] Compiling morsel MOOVConfig.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[26/71] Compiling morsel HLSEventPlaylist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[27/71] Compiling morsel HLSLivePlaylist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[28/71] Compiling morsel HLSVODPlaylist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[29/71] Compiling morsel Playlist.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[30/71] Compiling morsel PlaylistWriter.swift
/host/spi-builder-workspace/Sources/morsel/Playlists/PlaylistWriter.swift:33:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
31 |
32 |         if !FileManager.default.fileExists(atPath: self.playlistURL.path) {
33 |             FileManager.default.createFile(atPath: self.playlistURL.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
34 |         }
35 |
[31/71] Compiling morsel General.swift
[32/71] Compiling morsel HDLR.swift
[33/71] Compiling morsel MDAT.swift
[34/71] Compiling morsel MDHD.swift
[35/71] Compiling morsel MDIA.swift
[36/71] Compiling morsel MFHD.swift
[37/71] Compiling morsel MINF.swift
[38/71] Compiling morsel Codecs.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[39/71] Compiling morsel NSDateComponents+ISO8601.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[40/71] Compiling morsel String+Numbers.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[41/71] Compiling morsel FileWriterDelegate.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[42/71] Compiling morsel FragmentedMP4InitSegment.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[43/71] Compiling morsel FragmentedMP4Segment.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[44/71] Compiling morsel FragmentedMP4Writer.swift
/host/spi-builder-workspace/Sources/morsel/Codecs.swift:78:37: warning: 'characters' is deprecated: Please use String directly
76 |     var pairs: [String] {
77 |         var result: [String] = []
78 |         let characters = Array(self.characters)
   |                                     `- warning: 'characters' is deprecated: Please use String directly
79 |         stride(from: 0, to: characters.count, by: 2).forEach {
80 |             result.append(String(characters[$0..<min($0+2, characters.count)]))
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:159:40: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
157 |         let timeUnits: [NSCalendar.Unit]   = [.hour, .minute, .second]
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
    |                                        |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                        `- note: use 'compactMap(_:)' instead
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
161 |
/host/spi-builder-workspace/Sources/morsel/Extensions/NSDateComponents+ISO8601.swift:160:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
158 |
159 |         let periodValues = periodUnits.flatMap(strForUnit)
160 |         let timeValues   = timeUnits.flatMap(strForUnit)
    |                                      |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
    |                                      `- note: use 'compactMap(_:)' instead
161 |
162 |         return ["P", periodValues.joined(), "T", timeValues.joined()].joined()
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Segment.swift:24:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
22 |
23 |         if !FileManager.default.fileExists(atPath: file.path) {
24 |             FileManager.default.createFile(atPath: file.path, contents: nil, attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
25 |         }
26 |
/host/spi-builder-workspace/Sources/morsel/FragmentedMP4Writer.swift:74:17: error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 72 |         if !pathExists { throw FragmentedMP4WriterError.directoryDoesNotExist }
 73 |         #if os(Linux)
 74 |             if !isDir { throw FragmentedMP4WriterError.fileNotDirectory }
    |                 `- error: cannot convert value of type 'ObjCBool' to expected argument type 'Bool'
 75 |         #else
 76 |             if !isDir.boolValue { throw FragmentedMP4WriterError.fileNotDirectory }
[45/71] Compiling morsel AVC1.swift
[46/71] Compiling morsel AVCC.swift
[47/71] Compiling morsel COLR.swift
[48/71] Compiling morsel DINF.swift
[49/71] Compiling morsel DREF.swift
[50/71] Compiling morsel ESDS.swift
[51/71] Compiling morsel FTYP.swift
[52/71] Compiling morsel Representation.swift
[53/71] Compiling morsel Sample.swift
[54/71] Compiling morsel Segment.swift
[55/71] Compiling morsel StreamSegmenter.swift
[56/71] Compiling morsel StreamState.swift
[57/71] Compiling morsel ThreadSafeArray.swift
[58/71] Compiling morsel STBL.swift
[59/71] Compiling morsel STCO.swift
[60/71] Compiling morsel STSC.swift
[61/71] Compiling morsel STSD.swift
[62/71] Compiling morsel STSZ.swift
[63/71] Compiling morsel STTS.swift
[64/71] Compiling morsel TFDT.swift
[65/71] Compiling morsel TFHD.swift
[66/71] Compiling morsel TKHD.swift
[67/71] Compiling morsel TRAF.swift
[68/71] Compiling morsel TRAK.swift
[69/71] Compiling morsel TREX.swift
[70/71] Compiling morsel TRUN.swift
[71/71] Compiling morsel VMHD.swift
BUILD FAILURE 6.1 linux