The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Tonic, reference 2.1.0 (227c89), with Swift 6.1 for Linux on 4 Jun 2025 03:18:17 UTC.

Swift 6 data race errors: 1

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/AudioKit/Tonic.git
Reference: 2.1.0
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/AudioKit/Tonic
 * tag               2.1.0      -> FETCH_HEAD
HEAD is now at 227c89e test: romanNumeralNotation throws on index out of range (#53)
Cloned https://github.com/AudioKit/Tonic.git
Revision (git rev-parse @):
227c89ea047f928787bec571e487239547f21fe6
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/AudioKit/Tonic.git at 2.1.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/AudioKit/Tonic.git
https://github.com/AudioKit/Tonic.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Tonic",
  "name" : "Tonic",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Tonic",
      "targets" : [
        "Tonic"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "TonicTests",
      "module_type" : "SwiftTarget",
      "name" : "TonicTests",
      "path" : "Tests/TonicTests",
      "sources" : [
        "BitSetTests.swift",
        "ChordTests.swift",
        "IntervalTests.swift",
        "KeyTests.swift",
        "NoteTests.swift",
        "PerformanceTests.swift",
        "ReadMeTests.swift",
        "ScaleTests.swift",
        "TonicTests.swift"
      ],
      "target_dependencies" : [
        "Tonic"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Tonic",
      "module_type" : "SwiftTarget",
      "name" : "Tonic",
      "path" : "Sources/Tonic",
      "product_memberships" : [
        "Tonic"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Sources/Tonic/Tonic.docc",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Accidental.swift",
        "BitSet.swift",
        "Chord+Shortcuts.swift",
        "Chord.swift",
        "ChordTable.swift",
        "ChordType.swift",
        "Interval.swift",
        "Key+Shortcuts.swift",
        "Key.swift",
        "Letter.swift",
        "Note+MiddleCStandard.swift",
        "Note+Shortcuts.swift",
        "Note.swift",
        "NoteClass+Shortcuts.swift",
        "NoteClass.swift",
        "NoteSet.swift",
        "Octave.swift",
        "Pitch.swift",
        "PitchColor.swift",
        "Scale+Shortcuts.swift",
        "Scale.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2b296aa7156f49efc57252cdf9ed4bb21d0f92fc98d88800e255491ba2db3116
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Sources/Tonic/Chord.swift.orig
Building for debugging...
[0/3] Write sources
[0/3] Copying Tonic.docc
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/24] Emitting module Tonic
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:7:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// A table of note sets so we can look up chord names.
 6 | public class ChordTable {
   |              `- note: class 'ChordTable' does not conform to the 'Sendable' protocol
 7 |     public static let shared = ChordTable()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' 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
 8 |
 9 |     static func hash(_ noteClasses: [NoteClass]) -> Int {
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:71:62: warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
69 |
70 |     /// All chords include enharmonic (same NoteSet) - Use "chords" alternative when enharmonic chords are not needed
71 |     lazy var chordsIncludingEnharmonic: [Chord] = ChordTable.generateAllChordsIncludingEnharmonic()
   |                                                              |- warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
   |                                                              `- note: use 'getRankedChords()' instead
72 |
73 |     /// Returns all of the chord options (enharmonic chords) for a set a notes (slow but effective)
[5/26] Compiling Tonic Scale.swift
[6/26] Compiling Tonic resource_bundle_accessor.swift
[7/26] Compiling Tonic Accidental.swift
[8/26] Compiling Tonic BitSet.swift
[9/26] Compiling Tonic Chord+Shortcuts.swift
[10/26] Compiling Tonic Interval.swift
[11/26] Compiling Tonic Key+Shortcuts.swift
[12/26] Compiling Tonic Key.swift
[13/26] Compiling Tonic Letter.swift
[14/26] Compiling Tonic Note+MiddleCStandard.swift
[15/26] Compiling Tonic Note+Shortcuts.swift
[16/26] Compiling Tonic PitchColor.swift
[17/26] Compiling Tonic Scale+Shortcuts.swift
[18/26] Compiling Tonic Chord.swift
/host/spi-builder-workspace/Sources/Tonic/Chord.swift:292:49: warning: 'getAllChordsForNoteSet' is deprecated: Please use getRankedChords() for higher quality chord detection
290 |     /// want to list the notes C, E, G, A as C6 if the C is in the bass
291 |     public static func getRankedChords(from notes: [Note]) -> [Chord] {
292 |         let potentialChords = ChordTable.shared.getAllChordsForNoteSet(NoteSet(notes: notes))
    |                                                 |- warning: 'getAllChordsForNoteSet' is deprecated: Please use getRankedChords() for higher quality chord detection
    |                                                 `- note: use 'getRankedChords' instead
293 |         if potentialChords.isEmpty { return [] }
294 |         let orderedNotes = notes.sorted(by: { f, s in  f.noteNumber < s.noteNumber })
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:7:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// A table of note sets so we can look up chord names.
 6 | public class ChordTable {
   |              `- note: class 'ChordTable' does not conform to the 'Sendable' protocol
 7 |     public static let shared = ChordTable()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' 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
 8 |
 9 |     static func hash(_ noteClasses: [NoteClass]) -> Int {
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:71:62: warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
69 |
70 |     /// All chords include enharmonic (same NoteSet) - Use "chords" alternative when enharmonic chords are not needed
71 |     lazy var chordsIncludingEnharmonic: [Chord] = ChordTable.generateAllChordsIncludingEnharmonic()
   |                                                              |- warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
   |                                                              `- note: use 'getRankedChords()' instead
72 |
73 |     /// Returns all of the chord options (enharmonic chords) for a set a notes (slow but effective)
[19/26] Compiling Tonic ChordTable.swift
/host/spi-builder-workspace/Sources/Tonic/Chord.swift:292:49: warning: 'getAllChordsForNoteSet' is deprecated: Please use getRankedChords() for higher quality chord detection
290 |     /// want to list the notes C, E, G, A as C6 if the C is in the bass
291 |     public static func getRankedChords(from notes: [Note]) -> [Chord] {
292 |         let potentialChords = ChordTable.shared.getAllChordsForNoteSet(NoteSet(notes: notes))
    |                                                 |- warning: 'getAllChordsForNoteSet' is deprecated: Please use getRankedChords() for higher quality chord detection
    |                                                 `- note: use 'getRankedChords' instead
293 |         if potentialChords.isEmpty { return [] }
294 |         let orderedNotes = notes.sorted(by: { f, s in  f.noteNumber < s.noteNumber })
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:7:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// A table of note sets so we can look up chord names.
 6 | public class ChordTable {
   |              `- note: class 'ChordTable' does not conform to the 'Sendable' protocol
 7 |     public static let shared = ChordTable()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' 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
 8 |
 9 |     static func hash(_ noteClasses: [NoteClass]) -> Int {
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:71:62: warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
69 |
70 |     /// All chords include enharmonic (same NoteSet) - Use "chords" alternative when enharmonic chords are not needed
71 |     lazy var chordsIncludingEnharmonic: [Chord] = ChordTable.generateAllChordsIncludingEnharmonic()
   |                                                              |- warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
   |                                                              `- note: use 'getRankedChords()' instead
72 |
73 |     /// Returns all of the chord options (enharmonic chords) for a set a notes (slow but effective)
[20/26] Compiling Tonic ChordType.swift
/host/spi-builder-workspace/Sources/Tonic/Chord.swift:292:49: warning: 'getAllChordsForNoteSet' is deprecated: Please use getRankedChords() for higher quality chord detection
290 |     /// want to list the notes C, E, G, A as C6 if the C is in the bass
291 |     public static func getRankedChords(from notes: [Note]) -> [Chord] {
292 |         let potentialChords = ChordTable.shared.getAllChordsForNoteSet(NoteSet(notes: notes))
    |                                                 |- warning: 'getAllChordsForNoteSet' is deprecated: Please use getRankedChords() for higher quality chord detection
    |                                                 `- note: use 'getRankedChords' instead
293 |         if potentialChords.isEmpty { return [] }
294 |         let orderedNotes = notes.sorted(by: { f, s in  f.noteNumber < s.noteNumber })
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:7:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' may have shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 | /// A table of note sets so we can look up chord names.
 6 | public class ChordTable {
   |              `- note: class 'ChordTable' does not conform to the 'Sendable' protocol
 7 |     public static let shared = ChordTable()
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ChordTable' 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
 8 |
 9 |     static func hash(_ noteClasses: [NoteClass]) -> Int {
/host/spi-builder-workspace/Sources/Tonic/ChordTable.swift:71:62: warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
69 |
70 |     /// All chords include enharmonic (same NoteSet) - Use "chords" alternative when enharmonic chords are not needed
71 |     lazy var chordsIncludingEnharmonic: [Chord] = ChordTable.generateAllChordsIncludingEnharmonic()
   |                                                              |- warning: 'generateAllChordsIncludingEnharmonic()' is deprecated: Please use getRankedChords() for higher quality chord detection
   |                                                              `- note: use 'getRankedChords()' instead
72 |
73 |     /// Returns all of the chord options (enharmonic chords) for a set a notes (slow but effective)
[21/26] Compiling Tonic NoteSet.swift
[22/26] Compiling Tonic Octave.swift
[23/26] Compiling Tonic Pitch.swift
[24/26] Compiling Tonic Note.swift
[25/26] Compiling Tonic NoteClass+Shortcuts.swift
[26/26] Compiling Tonic NoteClass.swift
Build complete! (13.64s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Tonic",
  "name" : "Tonic",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Tonic",
      "targets" : [
        "Tonic"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "TonicTests",
      "module_type" : "SwiftTarget",
      "name" : "TonicTests",
      "path" : "Tests/TonicTests",
      "sources" : [
        "BitSetTests.swift",
        "ChordTests.swift",
        "IntervalTests.swift",
        "KeyTests.swift",
        "NoteTests.swift",
        "PerformanceTests.swift",
        "ReadMeTests.swift",
        "ScaleTests.swift",
        "TonicTests.swift"
      ],
      "target_dependencies" : [
        "Tonic"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Tonic",
      "module_type" : "SwiftTarget",
      "name" : "Tonic",
      "path" : "Sources/Tonic",
      "product_memberships" : [
        "Tonic"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Sources/Tonic/Tonic.docc",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Accidental.swift",
        "BitSet.swift",
        "Chord+Shortcuts.swift",
        "Chord.swift",
        "ChordTable.swift",
        "ChordType.swift",
        "Interval.swift",
        "Key+Shortcuts.swift",
        "Key.swift",
        "Letter.swift",
        "Note+MiddleCStandard.swift",
        "Note+Shortcuts.swift",
        "Note.swift",
        "NoteClass+Shortcuts.swift",
        "NoteClass.swift",
        "NoteSet.swift",
        "Octave.swift",
        "Pitch.swift",
        "PitchColor.swift",
        "Scale+Shortcuts.swift",
        "Scale.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2b296aa7156f49efc57252cdf9ed4bb21d0f92fc98d88800e255491ba2db3116
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.