Build Information
Failed to build Waveform with Swift 6.0 for macOS (SPM).
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/pixlwave/Waveform.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/pixlwave/Waveform
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 06d625f Add LICENSE
Cloned https://github.com/pixlwave/Waveform.git
Revision (git rev-parse @):
06d625fc6729b0654292b3678bf214d8ad38e1ee
SUCCESS checkout https://github.com/pixlwave/Waveform.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/pixlwave/Waveform.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-6F35C1178C84523A.txt
[3/11] Compiling Waveform SizeKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/SizeKey.swift:4:16: warning: static property 'defaultValue' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | struct SizeKey: PreferenceKey {
4 | static var defaultValue: CGSize = .zero
| |- warning: static property 'defaultValue' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | static func reduce(value: inout CGSize, nextValue: () -> CGSize) {
[4/11] Compiling Waveform Handle.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:5:6: error: 'Binding' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
| `- error: 'Binding' is only available in macOS 10.15 or newer
6 |
7 | @EnvironmentObject var generator: WaveformGenerator
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:7:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
6 |
7 | @EnvironmentObject var generator: WaveformGenerator
| `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
8 |
9 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:9:20: error: 'View' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:20:20: error: 'Gesture' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
21 | DragGesture()
22 | .onChanged { // $0.location is in the Circle's coordinate space
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:40:6: error: 'Binding' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
| `- error: 'Binding' is only available in macOS 10.15 or newer
41 |
42 | @EnvironmentObject var generator: WaveformGenerator
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:42:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
41 |
42 | @EnvironmentObject var generator: WaveformGenerator
| `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
43 |
44 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:44:20: error: 'View' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:55:20: error: 'Gesture' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
56 | DragGesture()
57 | .onChanged { // $0.location is in the Circle's coordinate space
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:10:9: error: 'VStack' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
| |- error: 'VStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
11 | Rectangle()
12 | .frame(width: 2)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:11:13: error: 'Rectangle' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
| |- error: 'Rectangle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
12 | .frame(width: 2)
13 | Circle()
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:12:18: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
12 | .frame(width: 2)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
13 | Circle()
14 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:13:13: error: 'Circle' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
12 | .frame(width: 2)
13 | Circle()
| |- error: 'Circle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
14 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
15 | .gesture(drag)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:14:18: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
12 | .frame(width: 2)
13 | Circle()
14 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
15 | .gesture(drag)
16 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:14:75: error: 'center' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
12 | .frame(width: 2)
13 | Circle()
14 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
| |- error: 'center' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
15 | .gesture(drag)
16 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:15:18: error: 'gesture(_:including:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
:
13 | Circle()
14 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
15 | .gesture(drag)
| |- error: 'gesture(_:including:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
16 | }
17 | .offset(x: generator.position(of: selectedSamples.lowerBound) - radius)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:17:10: error: 'offset(x:y:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
:
15 | .gesture(drag)
16 | }
17 | .offset(x: generator.position(of: selectedSamples.lowerBound) - radius)
| |- error: 'offset(x:y:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
18 | }
19 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:25:14: warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
21 | DragGesture()
22 | .onChanged { // $0.location is in the Circle's coordinate space
23 | updateSelection($0.location.x - radius)
24 | }
25 | .onEnded {
| |- warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
26 | updateSelection($0.location.x - radius)
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:21:9: error: 'DragGesture' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
21 | DragGesture()
| |- error: 'DragGesture' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
22 | .onChanged { // $0.location is in the Circle's coordinate space
23 | updateSelection($0.location.x - radius)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:21:9: error: 'init(minimumDistance:coordinateSpace:)' is only available in macOS 14.0 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
21 | DragGesture()
| |- error: 'init(minimumDistance:coordinateSpace:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
22 | .onChanged { // $0.location is in the Circle's coordinate space
23 | updateSelection($0.location.x - radius)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:22:14: error: 'onChanged' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
21 | DragGesture()
22 | .onChanged { // $0.location is in the Circle's coordinate space
| |- error: 'onChanged' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
23 | updateSelection($0.location.x - radius)
24 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:25:14: error: 'onEnded' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
21 | DragGesture()
22 | .onChanged { // $0.location is in the Circle's coordinate space
23 | updateSelection($0.location.x - radius)
24 | }
25 | .onEnded {
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
26 | updateSelection($0.location.x - radius)
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:33:9: error: setter for 'selectedSamples' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
28 | }
29 |
30 | func updateSelection(_ offset: CGFloat) {
| `- note: add @available attribute to enclosing instance method
31 | let sample = generator.sample(selectedSamples.lowerBound, with: offset)
32 | guard sample < selectedSamples.upperBound else { return }
33 | selectedSamples = sample..<selectedSamples.upperBound
| |- error: setter for 'selectedSamples' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
34 | }
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:45:9: error: 'VStack' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
| |- error: 'VStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | Rectangle()
47 | .frame(width: 2)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:46:13: error: 'Rectangle' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
| |- error: 'Rectangle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
47 | .frame(width: 2)
48 | Circle()
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:47:18: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
47 | .frame(width: 2)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
48 | Circle()
49 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:48:13: error: 'Circle' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
47 | .frame(width: 2)
48 | Circle()
| |- error: 'Circle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
50 | .gesture(drag)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:49:18: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
47 | .frame(width: 2)
48 | Circle()
49 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
50 | .gesture(drag)
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:49:75: error: 'center' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
47 | .frame(width: 2)
48 | Circle()
49 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
| |- error: 'center' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
50 | .gesture(drag)
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:50:18: error: 'gesture(_:including:)' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
:
48 | Circle()
49 | .frame(width: 2 * radius, height: 2 * radius, alignment: .center)
50 | .gesture(drag)
| |- error: 'gesture(_:including:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
51 | }
52 | .offset(x: generator.position(of: selectedSamples.upperBound) - radius)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:52:10: error: 'offset(x:y:)' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
:
50 | .gesture(drag)
51 | }
52 | .offset(x: generator.position(of: selectedSamples.upperBound) - radius)
| |- error: 'offset(x:y:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
53 | }
54 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:60:14: warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
56 | DragGesture()
57 | .onChanged { // $0.location is in the Circle's coordinate space
58 | updateSelection($0.location.x - radius)
59 | }
60 | .onEnded {
| |- warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
61 | updateSelection($0.location.x - radius)
62 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:56:9: error: 'DragGesture' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
56 | DragGesture()
| |- error: 'DragGesture' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
57 | .onChanged { // $0.location is in the Circle's coordinate space
58 | updateSelection($0.location.x - radius)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:56:9: error: 'init(minimumDistance:coordinateSpace:)' is only available in macOS 14.0 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
56 | DragGesture()
| |- error: 'init(minimumDistance:coordinateSpace:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
57 | .onChanged { // $0.location is in the Circle's coordinate space
58 | updateSelection($0.location.x - radius)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:57:14: error: 'onChanged' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
56 | DragGesture()
57 | .onChanged { // $0.location is in the Circle's coordinate space
| |- error: 'onChanged' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
58 | updateSelection($0.location.x - radius)
59 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:60:14: error: 'onEnded' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| `- note: add @available attribute to enclosing property
56 | DragGesture()
57 | .onChanged { // $0.location is in the Circle's coordinate space
58 | updateSelection($0.location.x - radius)
59 | }
60 | .onEnded {
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
61 | updateSelection($0.location.x - radius)
62 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:68:9: error: setter for 'selectedSamples' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
63 | }
64 |
65 | func updateSelection(_ offset: CGFloat) {
| `- note: add @available attribute to enclosing instance method
66 | let sample = generator.sample(selectedSamples.upperBound, with: offset)
67 | guard sample > selectedSamples.lowerBound else { return }
68 | selectedSamples = selectedSamples.lowerBound..<sample
| |- error: setter for 'selectedSamples' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
69 | }
70 | }
[5/11] Compiling Waveform Highlight.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:6:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
| `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
7 |
8 | func path(in rect: CGRect) -> Path {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:8:35: error: 'Path' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| | `- error: 'Path' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:8:10: warning: main actor-isolated instance method 'path(in:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add '@preconcurrency' to the 'Shape' conformance to defer isolation checking to run time
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| |- warning: main actor-isolated instance method 'path(in:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'path(in:)' to make this instance method not isolated to the actor
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
SwiftUI.Shape:3:10: note: 'path(in:)' declared here
1 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
2 | public protocol Shape : Sendable, Animatable, View {
3 | func path(in rect: CGRect) -> Path
| `- note: 'path(in:)' declared here
4 | @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, *)
5 | static var role: ShapeRole { get }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:9:9: error: 'Path' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
| |- error: 'Path' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
11 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:18:18: error: 'move(to:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
:
16 | let endIndex = Int(endPosition)
17 |
18 | path.move(to: CGPoint(x: startPosition, y: rect.midY))
| |- error: 'move(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
19 |
20 | for index in startIndex..<endIndex {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:23:22: error: 'addLine(to:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
:
21 | let x = CGFloat(index)
22 | let max = rect.midY + (rect.midY * CGFloat(generator.sampleData[index].max))
23 | path.addLine(to: CGPoint(x: x, y: max))
| |- error: 'addLine(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
24 | }
25 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:29:22: error: 'addLine(to:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
:
27 | let x = CGFloat(index)
28 | let min = rect.midY + (rect.midY * CGFloat(generator.sampleData[index].min))
29 | path.addLine(to: CGPoint(x: x, y: min))
| |- error: 'addLine(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
30 | }
31 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:32:18: error: 'closeSubpath()' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
:
30 | }
31 |
32 | path.closeSubpath()
| |- error: 'closeSubpath()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
33 | }
34 | }
[6/11] Compiling Waveform Renderer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:6:35: error: 'Path' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| | `- error: 'Path' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:7:9: error: 'Path' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
| |- error: 'Path' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
9 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:8:18: error: 'move(to:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
| |- error: 'move(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
9 |
10 | for index in 0..<waveformData.count {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:13:22: error: 'addLine(to:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
:
11 | let x = CGFloat(index)
12 | let max = rect.midY + (rect.midY * CGFloat(waveformData[index].max))
13 | path.addLine(to: CGPoint(x: x, y: max))
| |- error: 'addLine(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
14 | }
15 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:19:22: error: 'addLine(to:)' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
:
17 | let x = CGFloat(index)
18 | let min = rect.midY + (rect.midY * CGFloat(waveformData[index].min))
19 | path.addLine(to: CGPoint(x: x, y: min))
| |- error: 'addLine(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
20 | }
21 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:22:18: error: 'closeSubpath()' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
:
20 | }
21 |
22 | path.closeSubpath()
| |- error: 'closeSubpath()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
23 | }
24 | }
[7/11] Compiling Waveform Waveform.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:10:6: error: 'ObservedObject' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
| `- error: 'ObservedObject' is only available in macOS 10.15 or newer
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:12:6: error: 'State' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
| `- error: 'State' is only available in macOS 10.15 or newer
13 | @State private var panGestureValue: CGFloat = 0
14 | @Binding var selectedSamples: SampleRange
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:13:6: error: 'State' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
13 | @State private var panGestureValue: CGFloat = 0
| `- error: 'State' is only available in macOS 10.15 or newer
14 | @Binding var selectedSamples: SampleRange
15 | @Binding var selectionEnabled: Bool
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:14:6: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
13 | @State private var panGestureValue: CGFloat = 0
14 | @Binding var selectedSamples: SampleRange
| `- error: 'Binding' is only available in macOS 10.15 or newer
15 | @Binding var selectionEnabled: Bool
16 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:15:6: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
13 | @State private var panGestureValue: CGFloat = 0
14 | @Binding var selectedSamples: SampleRange
15 | @Binding var selectionEnabled: Bool
| `- error: 'Binding' is only available in macOS 10.15 or newer
16 |
17 | /// Creates an instance powered by the supplied generator.
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:22:64: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
20 | /// - selectedSamples: A binding to a `SampleRange` to update with the selection chosen in the waveform.
21 | /// - selectionEnabled: A binding to enable/disable selection on the waveform
22 | public init(generator: WaveformGenerator, selectedSamples: Binding<SampleRange>, selectionEnabled: Binding<Bool>) {
| | `- error: 'Binding' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
23 | self.generator = generator
24 | self._selectedSamples = selectedSamples
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:22:104: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
20 | /// - selectedSamples: A binding to a `SampleRange` to update with the selection chosen in the waveform.
21 | /// - selectionEnabled: A binding to enable/disable selection on the waveform
22 | public init(generator: WaveformGenerator, selectedSamples: Binding<SampleRange>, selectionEnabled: Binding<Bool>) {
| | `- error: 'Binding' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
23 | self.generator = generator
24 | self._selectedSamples = selectedSamples
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:28:27: error: 'View' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
26 | }
27 |
28 | public var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
29 | GeometryReader { geometry in
30 | ZStack {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:61:20: error: 'Gesture' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:75:19: error: 'Gesture' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:23:9: error: setter for 'generator' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
20 | /// - selectedSamples: A binding to a `SampleRange` to update with the selection chosen in the waveform.
21 | /// - selectionEnabled: A binding to enable/disable selection on the waveform
22 | public init(generator: WaveformGenerator, selectedSamples: Binding<SampleRange>, selectionEnabled: Binding<Bool>) {
| `- note: add @available attribute to enclosing initializer
23 | self.generator = generator
| |- error: setter for 'generator' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
24 | self._selectedSamples = selectedSamples
25 | self._selectionEnabled = selectionEnabled
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:33:45: error: reference to member 'systemBackground' cannot be resolved without a contextual type
31 | // invisible rectangle needed to register gestures that aren't on top of the waveform
32 | Rectangle()
33 | .foregroundColor(Color(.systemBackground).opacity(0.01))
| `- error: reference to member 'systemBackground' cannot be resolved without a contextual type
34 |
35 | Renderer(waveformData: generator.sampleData)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:68:14: warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
:
66 | zoomGestureValue = $0
67 | }
68 | .onEnded {
| |- warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
69 | let zoomAmount = $0 / zoomGestureValue
70 | zoom(amount: zoomAmount)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:62:9: error: 'MagnificationGesture' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
| |- error: 'MagnificationGesture' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
63 | .onChanged {
64 | let zoomAmount = $0 / zoomGestureValue
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:63:14: error: 'onChanged' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
| |- error: 'onChanged' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
64 | let zoomAmount = $0 / zoomGestureValue
65 | zoom(amount: zoomAmount)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:66:17: error: setter for 'zoomGestureValue' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
64 | let zoomAmount = $0 / zoomGestureValue
65 | zoom(amount: zoomAmount)
66 | zoomGestureValue = $0
| |- error: setter for 'zoomGestureValue' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | }
68 | .onEnded {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:68:14: error: 'onEnded' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
:
66 | zoomGestureValue = $0
67 | }
68 | .onEnded {
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
69 | let zoomAmount = $0 / zoomGestureValue
70 | zoom(amount: zoomAmount)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:71:17: error: setter for 'zoomGestureValue' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
:
69 | let zoomAmount = $0 / zoomGestureValue
70 | zoom(amount: zoomAmount)
71 | zoomGestureValue = 1
| |- error: setter for 'zoomGestureValue' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
72 | }
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:82:14: warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
:
80 | panGestureValue = $0.translation.width
81 | }
82 | .onEnded {
| |- warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
83 | let panAmount = $0.translation.width - panGestureValue
84 | pan(offset: -panAmount)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:76:9: error: 'DragGesture' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
| |- error: 'DragGesture' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
77 | .onChanged {
78 | let panAmount = $0.translation.width - panGestureValue
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:76:9: error: 'init(minimumDistance:coordinateSpace:)' is only available in macOS 14.0 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
| |- error: 'init(minimumDistance:coordinateSpace:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
77 | .onChanged {
78 | let panAmount = $0.translation.width - panGestureValue
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:77:14: error: 'onChanged' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
| |- error: 'onChanged' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
78 | let panAmount = $0.translation.width - panGestureValue
79 | pan(offset: -panAmount)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:80:17: error: setter for 'panGestureValue' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
78 | let panAmount = $0.translation.width - panGestureValue
79 | pan(offset: -panAmount)
80 | panGestureValue = $0.translation.width
| |- error: setter for 'panGestureValue' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
81 | }
82 | .onEnded {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:82:14: error: 'onEnded' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
:
80 | panGestureValue = $0.translation.width
81 | }
82 | .onEnded {
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
83 | let panAmount = $0.translation.width - panGestureValue
84 | pan(offset: -panAmount)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:85:17: error: setter for 'panGestureValue' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
:
83 | let panAmount = $0.translation.width - panGestureValue
84 | pan(offset: -panAmount)
85 | panGestureValue = 0
| |- error: setter for 'panGestureValue' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
86 | }
87 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:95:9: error: cannot pass as inout because setter for 'generator' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
87 | }
88 |
89 | func zoom(amount: CGFloat) {
| `- note: add @available attribute to enclosing instance method
90 | let count = generator.renderSamples.count
91 | let newCount = CGFloat(count) / amount
:
93 | let renderStartSample = max(0, generator.renderSamples.lowerBound + delta)
94 | let renderEndSample = min(generator.renderSamples.upperBound - delta, Int(generator.audioBuffer.frameLength))
95 | generator.renderSamples = renderStartSample..<renderEndSample
| |- error: cannot pass as inout because setter for 'generator' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:95:9: error: setter for 'renderSamples' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
87 | }
88 |
89 | func zoom(amount: CGFloat) {
| `- note: add @available attribute to enclosing instance method
90 | let count = generator.renderSamples.count
91 | let newCount = CGFloat(count) / amount
:
93 | let renderStartSample = max(0, generator.renderSamples.lowerBound + delta)
94 | let renderEndSample = min(generator.renderSamples.upperBound - delta, Int(generator.audioBuffer.frameLength))
95 | generator.renderSamples = renderStartSample..<renderEndSample
| |- error: setter for 'renderSamples' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
96 | }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:111:9: error: cannot pass as inout because setter for 'generator' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
96 | }
97 |
98 | func pan(offset: CGFloat) {
| `- note: add @available attribute to enclosing instance method
99 | let count = generator.renderSamples.count
100 | var startSample = generator.sample(generator.renderSamples.lowerBound, with: offset)
:
109 | }
110 |
111 | generator.renderSamples = startSample..<endSample
| |- error: cannot pass as inout because setter for 'generator' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
112 | }
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:111:9: error: setter for 'renderSamples' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
96 | }
97 |
98 | func pan(offset: CGFloat) {
| `- note: add @available attribute to enclosing instance method
99 | let count = generator.renderSamples.count
100 | var startSample = generator.sample(generator.renderSamples.lowerBound, with: offset)
:
109 | }
110 |
111 | generator.renderSamples = startSample..<endSample
| |- error: setter for 'renderSamples' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
112 | }
113 | }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/11] Compiling Waveform GenerateTask.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:20:32: warning: capture of 'self' with non-sendable type 'GenerateTask' in a `@Sendable` closure; this is an error in the Swift 6 language mode
2 | import Accelerate
3 |
4 | class GenerateTask {
| `- note: class 'GenerateTask' does not conform to the 'Sendable' protocol
5 | let audioBuffer: AVAudioPCMBuffer
6 | private var isCancelled = false
:
18 |
19 | DispatchQueue.global(qos: .userInteractive).async {
20 | let channels = Int(self.audioBuffer.format.channelCount)
| `- warning: capture of 'self' with non-sendable type 'GenerateTask' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | let length = renderSamples.count
22 | let samplesPerPoint = length / Int(width)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:54:17: warning: capture of 'completion' with non-sendable type '([SampleData]) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | // don't call completion if the task has been cancelled
53 | guard !self.isCancelled else { return }
54 | completion(sampleData)
| |- warning: capture of 'completion' with non-sendable type '([SampleData]) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
55 | }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:28:24: warning: capture of 'self' with non-sendable type 'GenerateTask' in a `@Sendable` closure; this is an error in the Swift 6 language mode
2 | import Accelerate
3 |
4 | class GenerateTask {
| `- note: class 'GenerateTask' does not conform to the 'Sendable' protocol
5 | let audioBuffer: AVAudioPCMBuffer
6 | private var isCancelled = false
:
26 | DispatchQueue.concurrentPerform(iterations: Int(width)) { point in
27 | // don't begin work if the task has been cancelled
28 | guard !self.isCancelled else { return }
| `- warning: capture of 'self' with non-sendable type 'GenerateTask' in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 |
30 | var data: SampleData = .zero
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:32:35: warning: capture of 'floatChannelData' with non-sendable type 'UnsafePointer<UnsafeMutablePointer<Float>>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
30 | var data: SampleData = .zero
31 | for channel in 0..<channels {
32 | let pointer = floatChannelData[channel].advanced(by: renderSamples.lowerBound + (point * samplesPerPoint))
| `- warning: capture of 'floatChannelData' with non-sendable type 'UnsafePointer<UnsafeMutablePointer<Float>>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | let stride = vDSP_Stride(self.audioBuffer.stride)
34 | let length = vDSP_Length(samplesPerPoint)
Swift.UnsafePointer:1:23: note: generic struct 'UnsafePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:48:43: warning: mutation of captured var 'sampleData' in concurrently-executing code; this is an error in the Swift 6 language mode
46 |
47 | // sync to hold completion handler until all iterations are complete
48 | DispatchQueue.main.sync { sampleData[point] = data }
| `- warning: mutation of captured var 'sampleData' in concurrently-executing code; this is an error in the Swift 6 language mode
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:53:24: warning: capture of 'self' with non-sendable type 'GenerateTask' in a `@Sendable` closure; this is an error in the Swift 6 language mode
2 | import Accelerate
3 |
4 | class GenerateTask {
| `- note: class 'GenerateTask' does not conform to the 'Sendable' protocol
5 | let audioBuffer: AVAudioPCMBuffer
6 | private var isCancelled = false
:
51 | DispatchQueue.main.async {
52 | // don't call completion if the task has been cancelled
53 | guard !self.isCancelled else { return }
| `- warning: capture of 'self' with non-sendable type 'GenerateTask' in a `@Sendable` closure; this is an error in the Swift 6 language mode
54 | completion(sampleData)
55 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:54:17: warning: capture of 'completion' with non-sendable type '([SampleData]) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | // don't call completion if the task has been cancelled
53 | guard !self.isCancelled else { return }
54 | completion(sampleData)
| |- warning: capture of 'completion' with non-sendable type '([SampleData]) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
55 | }
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Models/GenerateTask.swift:54:28: warning: reference to captured var 'sampleData' in concurrently-executing code; this is an error in the Swift 6 language mode
52 | // don't call completion if the task has been cancelled
53 | guard !self.isCancelled else { return }
54 | completion(sampleData)
| `- warning: reference to captured var 'sampleData' in concurrently-executing code; this is an error in the Swift 6 language mode
55 | }
56 | }
[9/11] Compiling Waveform SampleData.swift
[10/11] Emitting module Waveform
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:12:6: error: 'Published' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
:
10 |
11 | private var generateTask: GenerateTask?
12 | @Published private(set) var sampleData: [SampleData] = []
| `- error: 'Published' is only available in macOS 10.15 or newer
13 |
14 | /// The range of samples to display. The value will update as the waveform is zoomed and panned.
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:15:6: error: 'Published' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
:
13 |
14 | /// The range of samples to display. The value will update as the waveform is zoomed and panned.
15 | @Published public var renderSamples: SampleRange {
| `- error: 'Published' is only available in macOS 10.15 or newer
16 | didSet { refreshData() }
17 | }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:5:33: error: 'ObservableObject' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| | `- error: 'ObservableObject' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:5:6: error: 'Binding' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
| `- error: 'Binding' is only available in macOS 10.15 or newer
6 |
7 | @EnvironmentObject var generator: WaveformGenerator
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:7:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
6 |
7 | @EnvironmentObject var generator: WaveformGenerator
| `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
8 |
9 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:9:20: error: 'View' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
7 | @EnvironmentObject var generator: WaveformGenerator
8 |
9 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
10 | VStack(spacing: 0) {
11 | Rectangle()
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:20:20: error: 'Gesture' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct StartHandle: View {
| `- note: add @available attribute to enclosing struct
4 | let radius: CGFloat = 12
5 | @Binding var selectedSamples: SampleRange
:
18 | }
19 |
20 | var drag: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
21 | DragGesture()
22 | .onChanged { // $0.location is in the Circle's coordinate space
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:40:6: error: 'Binding' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
| `- error: 'Binding' is only available in macOS 10.15 or newer
41 |
42 | @EnvironmentObject var generator: WaveformGenerator
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:42:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
41 |
42 | @EnvironmentObject var generator: WaveformGenerator
| `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
43 |
44 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:44:20: error: 'View' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
42 | @EnvironmentObject var generator: WaveformGenerator
43 |
44 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
45 | VStack(spacing: 0) {
46 | Rectangle()
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Handle.swift:55:20: error: 'Gesture' is only available in macOS 10.15 or newer
36 |
37 |
38 | struct EndHandle: View {
| `- note: add @available attribute to enclosing struct
39 | let radius: CGFloat = 12
40 | @Binding var selectedSamples: SampleRange
:
53 | }
54 |
55 | var drag: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
56 | DragGesture()
57 | .onChanged { // $0.location is in the Circle's coordinate space
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:6:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
| `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
7 |
8 | func path(in rect: CGRect) -> Path {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:8:35: error: 'Path' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add @available attribute to enclosing struct
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| | `- error: 'Path' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Highlight.swift:8:10: warning: main actor-isolated instance method 'path(in:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
1 | import SwiftUI
2 |
3 | struct Highlight: Shape {
| `- note: add '@preconcurrency' to the 'Shape' conformance to defer isolation checking to run time
4 | let selectedSamples: SampleRange
5 |
6 | @EnvironmentObject var generator: WaveformGenerator
7 |
8 | func path(in rect: CGRect) -> Path {
| |- warning: main actor-isolated instance method 'path(in:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'path(in:)' to make this instance method not isolated to the actor
9 | Path { path in
10 | guard selectedSamples.count > 0, selectedSamples.overlaps(generator.renderSamples) else { return }
SwiftUI.Shape:3:10: note: 'path(in:)' declared here
1 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
2 | public protocol Shape : Sendable, Animatable, View {
3 | func path(in rect: CGRect) -> Path
| `- note: 'path(in:)' declared here
4 | @available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, *)
5 | static var role: ShapeRole { get }
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Renderer.swift:6:35: error: 'Path' is only available in macOS 10.15 or newer
1 | import SwiftUI
2 |
3 | struct Renderer: Shape {
| `- note: add @available attribute to enclosing struct
4 | let waveformData: [SampleData]
5 |
6 | func path(in rect: CGRect) -> Path {
| | `- error: 'Path' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
7 | Path { path in
8 | path.move(to: CGPoint(x: 0, y: rect.midY))
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/SizeKey.swift:4:16: warning: static property 'defaultValue' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | struct SizeKey: PreferenceKey {
4 | static var defaultValue: CGSize = .zero
| |- warning: static property 'defaultValue' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | static func reduce(value: inout CGSize, nextValue: () -> CGSize) {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:10:6: error: 'ObservedObject' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
| `- error: 'ObservedObject' is only available in macOS 10.15 or newer
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:12:6: error: 'State' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
| `- error: 'State' is only available in macOS 10.15 or newer
13 | @State private var panGestureValue: CGFloat = 0
14 | @Binding var selectedSamples: SampleRange
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:13:6: error: 'State' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
13 | @State private var panGestureValue: CGFloat = 0
| `- error: 'State' is only available in macOS 10.15 or newer
14 | @Binding var selectedSamples: SampleRange
15 | @Binding var selectionEnabled: Bool
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:14:6: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
12 | @State private var zoomGestureValue: CGFloat = 1
13 | @State private var panGestureValue: CGFloat = 0
14 | @Binding var selectedSamples: SampleRange
| `- error: 'Binding' is only available in macOS 10.15 or newer
15 | @Binding var selectionEnabled: Bool
16 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:15:6: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
13 | @State private var panGestureValue: CGFloat = 0
14 | @Binding var selectedSamples: SampleRange
15 | @Binding var selectionEnabled: Bool
| `- error: 'Binding' is only available in macOS 10.15 or newer
16 |
17 | /// Creates an instance powered by the supplied generator.
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:22:64: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
20 | /// - selectedSamples: A binding to a `SampleRange` to update with the selection chosen in the waveform.
21 | /// - selectionEnabled: A binding to enable/disable selection on the waveform
22 | public init(generator: WaveformGenerator, selectedSamples: Binding<SampleRange>, selectionEnabled: Binding<Bool>) {
| | `- error: 'Binding' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
23 | self.generator = generator
24 | self._selectedSamples = selectedSamples
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:22:104: error: 'Binding' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
20 | /// - selectedSamples: A binding to a `SampleRange` to update with the selection chosen in the waveform.
21 | /// - selectionEnabled: A binding to enable/disable selection on the waveform
22 | public init(generator: WaveformGenerator, selectedSamples: Binding<SampleRange>, selectionEnabled: Binding<Bool>) {
| | `- error: 'Binding' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
23 | self.generator = generator
24 | self._selectedSamples = selectedSamples
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:28:27: error: 'View' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
26 | }
27 |
28 | public var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
29 | GeometryReader { geometry in
30 | ZStack {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:61:20: error: 'Gesture' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
59 | }
60 |
61 | var zoom: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
62 | MagnificationGesture()
63 | .onChanged {
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/Views/Waveform.swift:75:19: error: 'Gesture' is only available in macOS 10.15 or newer
7 |
8 | /// An interactive waveform generated from an `AVAudioFile`.
9 | public struct Waveform: View {
| `- note: add @available attribute to enclosing struct
10 | @ObservedObject var generator: WaveformGenerator
11 |
:
73 | }
74 |
75 | var pan: some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
76 | DragGesture()
77 | .onChanged {
[11/11] Compiling Waveform WaveformGenerator.swift
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:12:6: error: 'Published' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
:
10 |
11 | private var generateTask: GenerateTask?
12 | @Published private(set) var sampleData: [SampleData] = []
| `- error: 'Published' is only available in macOS 10.15 or newer
13 |
14 | /// The range of samples to display. The value will update as the waveform is zoomed and panned.
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:15:6: error: 'Published' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
:
13 |
14 | /// The range of samples to display. The value will update as the waveform is zoomed and panned.
15 | @Published public var renderSamples: SampleRange {
| `- error: 'Published' is only available in macOS 10.15 or newer
16 | didSet { refreshData() }
17 | }
<unknown>:0: error: cannot convert value of type 'KeyPath<WaveformGenerator, [SampleData]>' to expected argument type 'ReferenceWritableKeyPath<WaveformGenerator, [SampleData]>'
<unknown>:0: error: cannot convert value of type 'KeyPath<WaveformGenerator, SampleRange>' (aka 'KeyPath<WaveformGenerator, Range<Int>>') to expected argument type 'ReferenceWritableKeyPath<WaveformGenerator, SampleRange>' (aka 'ReferenceWritableKeyPath<WaveformGenerator, Range<Int>>')
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:5:33: error: 'ObservableObject' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| | `- error: 'ObservableObject' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:38:9: error: setter for 'renderSamples' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
:
23 | /// Creates an instance from an `AVAudioFile`.
24 | /// - Parameter audioFile: The audio file to generate waveform data from.
25 | public init?(audioFile: AVAudioFile) {
| `- note: add @available attribute to enclosing initializer
26 | let capacity = AVAudioFrameCount(audioFile.length)
27 | guard let audioBuffer = AVAudioPCMBuffer(pcmFormat: audioFile.processingFormat, frameCapacity: capacity) else { return nil }
:
36 | self.audioFile = audioFile
37 | self.audioBuffer = audioBuffer
38 | self.renderSamples = 0..<Int(capacity)
| |- error: setter for 'renderSamples' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | }
40 |
/Users/admin/builder/spi-builder-workspace/Sources/Waveform/View Model/WaveformGenerator.swift:46:13: error: setter for 'sampleData' is only available in macOS 10.15 or newer
3 |
4 | /// An object that generates waveform data from an `AVAudioFile`.
5 | public class WaveformGenerator: ObservableObject {
| `- note: add @available attribute to enclosing class
6 | /// The audio file initially used to create the generator.
7 | public let audioFile: AVAudioFile
:
39 | }
40 |
41 | func refreshData() {
| `- note: add @available attribute to enclosing instance method
42 | generateTask?.cancel()
43 | generateTask = GenerateTask(audioBuffer: audioBuffer)
44 |
45 | generateTask?.resume(width: width, renderSamples: renderSamples) { sampleData in
46 | self.sampleData = sampleData
| |- error: setter for 'sampleData' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
47 | }
48 | }
BUILD FAILURE 6.0 macosSpm