The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Undertow, reference 1.0.3 (4968e6), with Swift 6.2 for macOS (SPM) on 15 Aug 2026 03:43:07 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64

Build Log

    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 92 |             content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
 93 |         case let .colorPlanes(offset):
 94 |             content.colorPlanesEffect(offset: offset)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 92 |             content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
 93 |         case let .colorPlanes(offset):
 94 |             content.colorPlanesEffect(offset: offset)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 92 |             content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
 93 |         case let .colorPlanes(offset):
 94 |             content.colorPlanesEffect(offset: offset)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 94 |             content.colorPlanesEffect(offset: offset)
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 94 |             content.colorPlanesEffect(offset: offset)
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 94 |             content.colorPlanesEffect(offset: offset)
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 94 |             content.colorPlanesEffect(offset: offset)
 95 |         case let .emboss(strength):
 96 |             content.embossEffect(strength: strength)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 96 |             content.embossEffect(strength: strength)
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 96 |             content.embossEffect(strength: strength)
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 96 |             content.embossEffect(strength: strength)
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 96 |             content.embossEffect(strength: strength)
 97 |         case let .water(speed, strength, frequency):
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
 98 |             content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
 99 |         case let .wave(speed, smoothing, strength):
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
100 |             content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 |         case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
    |             |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
105 |         case .rainbowNoise:
106 |             content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
105 |         case .rainbowNoise:
106 |             content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
105 |         case .rainbowNoise:
106 |             content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
102 |             content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 |         case .whiteNoise:
104 |             content.whiteNoiseEffect(time: time)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
105 |         case .rainbowNoise:
106 |             content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:106:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
    :
104 |             content.whiteNoiseEffect(time: time)
105 |         case .rainbowNoise:
106 |             content.rainbowNoiseEffect(time: time)
    |             |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
107 |         }
108 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:87:108: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
 14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
 15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
 16 | struct EffectSourceViewModifier: ViewModifier {
    |        `- note: add '@available' attribute to enclosing struct
 17 |     /// Which effect to apply.
 18 |     let configuration: Effect
    :
 85 |     ///     static ones.
 86 |     @ViewBuilder
 87 |     private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
    |                  |                                                                                         |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
    |                  |                                                                                         `- note: add 'if #available' version check
    |                  `- note: add '@available' attribute to enclosing instance method
 88 |         switch configuration {
 89 |         case .invert:
[34/51] Compiling Undertow ShaderLibrary+waveLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:12:29: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
   |                |            `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Wave-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Wave-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:12:35: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
   |                |                  `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "WhiteNoise-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "WhiteNoise-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:18:52: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          |                                         `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:17:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
15 |     ///   to avoid clipping.
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:19:14: error: 'layerEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
   |              |- error: 'layerEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
21 |             maxSampleOffset: CGSize(width: offset.width * 2, height: offset.height * 2)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:20:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
21 |             maxSampleOffset: CGSize(width: offset.width * 2, height: offset.height * 2)
22 |         )
[35/51] Compiling Undertow ShaderLibrary+whiteNoiseLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:12:29: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
   |                |            `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Wave-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Wave-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:12:35: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
   |                |                  `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "WhiteNoise-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "WhiteNoise-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:18:52: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          |                                         `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:17:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
15 |     ///   to avoid clipping.
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:19:14: error: 'layerEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
   |              |- error: 'layerEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
21 |             maxSampleOffset: CGSize(width: offset.width * 2, height: offset.height * 2)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:20:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
21 |             maxSampleOffset: CGSize(width: offset.width * 2, height: offset.height * 2)
22 |         )
[36/51] Compiling Undertow View+colorPlanesEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:12:29: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
   |                |            `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Wave-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Wave-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waveLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the uniform wave-distortion effect.
12 |     static let waveLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:12:35: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
   |                |                  `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "WhiteNoise-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "WhiteNoise-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+whiteNoiseLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic grayscale-noise effect.
12 |     static let whiteNoiseLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:18:52: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          |                                         `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:17:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
15 |     ///   to avoid clipping.
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:19:14: error: 'layerEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
   |              |- error: 'layerEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
21 |             maxSampleOffset: CGSize(width: offset.width * 2, height: offset.height * 2)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+colorPlanesEffect.swift:20:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the RGB-shift/glitch effect to this view via `.layerEffect` (see
12 |     /// `ColorPlanes.metal`.
   :
16 |     /// - Returns: This view with the color-planes effect applied.
17 |     @ViewBuilder
18 |     func colorPlanesEffect(offset: CGSize) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
19 |         self.layerEffect(
20 |             ShaderLibrary.colorPlanesLibrary.colorPlanes(.float2(Float(offset.width), Float(offset.height))),
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
21 |             maxSampleOffset: CGSize(width: offset.width * 2, height: offset.height * 2)
22 |         )
[37/51] Compiling Undertow ShaderLibrary+rainbowNoiseLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RainbowNoise-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RainbowNoise-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:12:32: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
   |                |               `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Shimmer-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Shimmer-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:12:30: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
   |                |             `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Water-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Water-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
[38/51] Compiling Undertow ShaderLibrary+shimmerLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RainbowNoise-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RainbowNoise-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:12:32: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
   |                |               `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Shimmer-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Shimmer-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:12:30: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
   |                |             `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Water-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Water-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
[39/51] Compiling Undertow ShaderLibrary+waterLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RainbowNoise-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RainbowNoise-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+rainbowNoiseLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the dynamic multi-colored-noise effect.
12 |     static let rainbowNoiseLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:12:32: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
   |                |               `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Shimmer-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Shimmer-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+shimmerLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the shimmering gradient-sweep effect.
12 |     static let shimmerLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:12:30: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
   |                |             `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Water-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Water-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+waterLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the water-ripple distortion effect.
12 |     static let waterLibrary: ShaderLibrary = {
[40/51] Compiling Undertow EffectTargetViewModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:16:41: error: 'View' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          |                              `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:18:14: error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
   |              |- error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
19 |                 GeometryReader { geometry in
20 |                     Color.clear
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:19:17: error: 'GeometryReader' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
   |                 |- error: 'GeometryReader' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
20 |                     Color.clear
21 |                         .preference(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:20:21: error: 'Color' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
   |                     |- error: 'Color' is only available in macOS 10.15 or newer
   |                     `- note: add 'if #available' version check
21 |                         .preference(
22 |                             key: EffectTargetFramePreferenceKey.self,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:20:27: error: 'clear' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
   |                           |- error: 'clear' is only available in macOS 10.15 or newer
   |                           `- note: add 'if #available' version check
21 |                         .preference(
22 |                             key: EffectTargetFramePreferenceKey.self,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:21:26: error: 'preference(key:value:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
21 |                         .preference(
   |                          |- error: 'preference(key:value:)' is only available in macOS 10.15 or newer
   |                          `- note: add 'if #available' version check
22 |                             key: EffectTargetFramePreferenceKey.self,
23 |                             value: [
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:25:53: error: 'frame(in:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
   :
23 |                             value: [
24 |                                 TargetMask(
25 |                                     frame: geometry.frame(in: .global),
   |                                                     |- error: 'frame(in:)' is only available in macOS 10.15 or newer
   |                                                     `- note: add 'if #available' version check
26 |                                     cornerRadius: cornerRadius
27 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RGBInversion-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RGBInversion-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
[41/51] Compiling Undertow TargetMask.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:16:41: error: 'View' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          |                              `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:18:14: error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
   |              |- error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
19 |                 GeometryReader { geometry in
20 |                     Color.clear
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:19:17: error: 'GeometryReader' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
   |                 |- error: 'GeometryReader' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
20 |                     Color.clear
21 |                         .preference(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:20:21: error: 'Color' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
   |                     |- error: 'Color' is only available in macOS 10.15 or newer
   |                     `- note: add 'if #available' version check
21 |                         .preference(
22 |                             key: EffectTargetFramePreferenceKey.self,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:20:27: error: 'clear' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
   |                           |- error: 'clear' is only available in macOS 10.15 or newer
   |                           `- note: add 'if #available' version check
21 |                         .preference(
22 |                             key: EffectTargetFramePreferenceKey.self,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:21:26: error: 'preference(key:value:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
21 |                         .preference(
   |                          |- error: 'preference(key:value:)' is only available in macOS 10.15 or newer
   |                          `- note: add 'if #available' version check
22 |                             key: EffectTargetFramePreferenceKey.self,
23 |                             value: [
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:25:53: error: 'frame(in:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
   :
23 |                             value: [
24 |                                 TargetMask(
25 |                                     frame: geometry.frame(in: .global),
   |                                                     |- error: 'frame(in:)' is only available in macOS 10.15 or newer
   |                                                     `- note: add 'if #available' version check
26 |                                     cornerRadius: cornerRadius
27 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RGBInversion-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RGBInversion-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
[42/51] Compiling Undertow ShaderLibrary+RGBInversionLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:16:41: error: 'View' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          |                              `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:18:14: error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
   |              |- error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
19 |                 GeometryReader { geometry in
20 |                     Color.clear
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:19:17: error: 'GeometryReader' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
   |                 |- error: 'GeometryReader' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
20 |                     Color.clear
21 |                         .preference(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:20:21: error: 'Color' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
   |                     |- error: 'Color' is only available in macOS 10.15 or newer
   |                     `- note: add 'if #available' version check
21 |                         .preference(
22 |                             key: EffectTargetFramePreferenceKey.self,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:20:27: error: 'clear' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
   |                           |- error: 'clear' is only available in macOS 10.15 or newer
   |                           `- note: add 'if #available' version check
21 |                         .preference(
22 |                             key: EffectTargetFramePreferenceKey.self,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:21:26: error: 'preference(key:value:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
19 |                 GeometryReader { geometry in
20 |                     Color.clear
21 |                         .preference(
   |                          |- error: 'preference(key:value:)' is only available in macOS 10.15 or newer
   |                          `- note: add 'if #available' version check
22 |                             key: EffectTargetFramePreferenceKey.self,
23 |                             value: [
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectTarget/EffectTargetViewModifier.swift:25:53: error: 'frame(in:)' is only available in macOS 10.15 or newer
10 | /// A view modifier that reports its frame and corner `cornerRadius`, via `EffectTargetFramePreferenceKey`,
11 | /// for collection by the nearest ancestor `.effectCoordinator()` and use by its `.effectSource()`.
12 | struct EffectTargetViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
13 |     /// The corner radius applied to this target's mask window.
14 |     let cornerRadius: CGFloat
15 |
16 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         content
18 |             .background(
   :
23 |                             value: [
24 |                                 TargetMask(
25 |                                     frame: geometry.frame(in: .global),
   |                                                     |- error: 'frame(in:)' is only available in macOS 10.15 or newer
   |                                                     `- note: add 'if #available' version check
26 |                                     cornerRadius: cornerRadius
27 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RGBInversion-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "RGBInversion-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+RGBInversionLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the color-inversion effect.
12 |     static let rgbInversionLibrary: ShaderLibrary = {
[43/51] Compiling Undertow View+rainbowNoiseEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:16:57: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          |                                              `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:15:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
13 |     /// - Parameter time: Elapsed seconds since the effect's animation began.
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:17:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
19 |         )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:18:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
19 |         )
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:25:177: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          |                                                                                                                                                                      `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:24:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
22 |     ///     y-axis; only meaningful modulo 180°) — converted to radians for the shader.
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:26:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
27 |             ShaderLibrary.shimmerLibrary.shimmer(
28 |                 .float2(size),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:27:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
28 |                 .float2(size),
29 |                 .float(time),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:21:119: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          |                                                                                                            `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:20:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
18 |     ///   - frequency: How often ripples occur. 5–25 work best.
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:22:14: error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
   |              |- error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
23 |             ShaderLibrary.waterLibrary.water(
24 |                 .float2(size),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:23:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
24 |                 .float2(size),
25 |                 .float(time),
[44/51] Compiling Undertow View+shimmerEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:16:57: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          |                                              `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:15:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
13 |     /// - Parameter time: Elapsed seconds since the effect's animation began.
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:17:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
19 |         )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:18:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
19 |         )
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:25:177: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          |                                                                                                                                                                      `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:24:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
22 |     ///     y-axis; only meaningful modulo 180°) — converted to radians for the shader.
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:26:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
27 |             ShaderLibrary.shimmerLibrary.shimmer(
28 |                 .float2(size),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:27:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
28 |                 .float2(size),
29 |                 .float(time),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:21:119: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          |                                                                                                            `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:20:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
18 |     ///   - frequency: How often ripples occur. 5–25 work best.
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:22:14: error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
   |              |- error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
23 |             ShaderLibrary.waterLibrary.water(
24 |                 .float2(size),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:23:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
24 |                 .float2(size),
25 |                 .float(time),
[45/51] Compiling Undertow View+waterEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:16:57: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          |                                              `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:15:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
13 |     /// - Parameter time: Elapsed seconds since the effect's animation began.
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:17:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
19 |         )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+rainbowNoiseEffect.swift:18:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic multi-colored-noise effect to this view via `.colorEffect` (see
12 |     /// `RainbowNoise.metal`).
   :
14 |     /// - Returns: This view with the rainbow-noise effect applied.
15 |     @ViewBuilder
16 |     func rainbowNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.rainbowNoiseLibrary.rainbowNoise(.float(time))
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
19 |         )
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:25:177: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          |                                                                                                                                                                      `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:24:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
22 |     ///     y-axis; only meaningful modulo 180°) — converted to radians for the shader.
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:26:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
27 |             ShaderLibrary.shimmerLibrary.shimmer(
28 |                 .float2(size),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+shimmerEffect.swift:27:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the shimmering gradient-sweep effect to this view via `.colorEffect` (see
12 |     /// `Shimmer.metal`).
   :
23 |     /// - Returns: This view with the shimmer effect applied.
24 |     @ViewBuilder
25 |     func shimmerEffect(size: CGSize, time: TimeInterval, animationDuration: CGFloat, gradientWidth: CGFloat, maxLightness: CGFloat, direction: CGFloat, angle: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
26 |         self.colorEffect(
27 |             ShaderLibrary.shimmerLibrary.shimmer(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
28 |                 .float2(size),
29 |                 .float(time),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:21:119: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          |                                                                                                            `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:20:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
18 |     ///   - frequency: How often ripples occur. 5–25 work best.
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:22:14: error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
   |              |- error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
23 |             ShaderLibrary.waterLibrary.water(
24 |                 .float2(size),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waterEffect.swift:23:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the water-ripple distortion effect to this view via `.distortionEffect` (see
12 |     /// `Water.metal`).
   :
19 |     /// - Returns: This view with the water effect applied.
20 |     @ViewBuilder
21 |     func waterEffect(size: CGSize, time: TimeInterval, speed: CGFloat, strength: CGFloat, frequency: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waterLibrary.water(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
24 |                 .float2(size),
25 |                 .float(time),
[46/51] Compiling Undertow ShaderLibrary+colorPlanesLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:12:36: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
   |                |                   `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "ColorPlanes-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "ColorPlanes-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:12:31: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
   |                |              `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Emboss-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Emboss-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "GaussianBlur-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "GaussianBlur-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
[47/51] Compiling Undertow ShaderLibrary+embossLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:12:36: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
   |                |                   `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "ColorPlanes-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "ColorPlanes-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:12:31: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
   |                |              `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Emboss-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Emboss-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "GaussianBlur-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "GaussianBlur-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
[48/51] Compiling Undertow ShaderLibrary+gaussianBlurLibrary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:12:36: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
   |                |                   `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "ColorPlanes-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "ColorPlanes-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+colorPlanesLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the RGB-shift/glitch color-planes effect
12 |     static let colorPlanesLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:12:31: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
   |                |              `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Emboss-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "Emboss-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+embossLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the embossing/relief effect.
12 |     static let embossLibrary: ShaderLibrary = {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:12:37: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
   |                |                    `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "GaussianBlur-iphonesimulator"
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:25:16: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
   |                `- note: add '@available' attribute to enclosing static property
13 | #if targetEnvironment(simulator)
14 |         let name = "GaussianBlur-iphonesimulator"
   :
23 |             fatalError("Undertow: missing Metal library '\(name).metallib' in bundle.")
24 |         }
25 |         return ShaderLibrary(url: url)
   |                |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |                `- note: add 'if #available' version check
26 |     }()
27 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/ShaderLibrary+gaussianBlurLibrary.swift:10:11: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension ShaderLibrary {
   | |         `- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// The precompiled Metal shader library for the two-pass separable Gaussian blur effect.
12 |     static let gaussianBlurLibrary: ShaderLibrary = {
[49/51] Compiling Undertow View+waveEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:21:104: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          |                                                                                             `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:20:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
18 |     ///   - strength: How pronounced the ripple effect is. Try starting with 5.
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:22:14: error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
   |              |- error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
23 |             ShaderLibrary.waveLibrary.wave(
24 |                 .float(time),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:23:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
24 |                 .float(time),
25 |                 .float(speed),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:16:55: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          |                                            `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:15:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
13 |     /// - Parameter time: Elapsed seconds since the effect's animation began.
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:17:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
19 |         )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:18:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
19 |         )
20 |     }
[50/51] Compiling Undertow View+whiteNoiseEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:21:104: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          |                                                                                             `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:20:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
18 |     ///   - strength: How pronounced the ripple effect is. Try starting with 5.
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:22:14: error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
   |              |- error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
23 |             ShaderLibrary.waveLibrary.wave(
24 |                 .float(time),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:23:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
24 |                 .float(time),
25 |                 .float(speed),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:16:55: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          |                                            `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:15:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
13 |     /// - Parameter time: Elapsed seconds since the effect's animation began.
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:17:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
19 |         )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:18:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
19 |         )
20 |     }
[51/51] Compiling Undertow resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:21:104: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          |                                                                                             `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:20:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
18 |     ///   - strength: How pronounced the ripple effect is. Try starting with 5.
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:22:14: error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
   |              |- error: 'distortionEffect(_:maxSampleOffset:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
23 |             ShaderLibrary.waveLibrary.wave(
24 |                 .float(time),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+waveEffect.swift:23:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the uniform wave-distortion effect to this view via `.distortionEffect` (see
12 |     /// `Wave.metal`).
   :
19 |     /// - Returns: This view with the wave effect applied.
20 |     @ViewBuilder
21 |     func waveEffect(time: TimeInterval, speed: CGFloat, smoothing: CGFloat, strength: CGFloat) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
22 |         self.distortionEffect(
23 |             ShaderLibrary.waveLibrary.wave(
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
24 |                 .float(time),
25 |                 .float(speed),
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:16:55: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          |                                            `- error: 'View' is only available in macOS 10.15 or newer
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:15:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
13 |     /// - Parameter time: Elapsed seconds since the effect's animation began.
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
   |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:10:11: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | |         `- error: 'View' is only available in macOS 10.15 or newer
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:17:14: error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
   |              |- error: 'colorEffect(_:isEnabled:)' is only available in macOS 14.0 or newer
   |              `- note: add 'if #available' version check
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
19 |         )
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/Extensions/View+whiteNoiseEffect.swift:18:13: error: 'ShaderLibrary' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | extension View {
   | `- note: add '@available' attribute to enclosing extension
11 |     /// Applies the dynamic grayscale-noise effect to this view via `.colorEffect` (see
12 |     /// `WhiteNoise.metal`).
   :
14 |     /// - Returns: This view with the white-noise effect applied.
15 |     @ViewBuilder
16 |     func whiteNoiseEffect(time: TimeInterval) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
17 |         self.colorEffect(
18 |             ShaderLibrary.whiteNoiseLibrary.whiteNoise(.float(time))
   |             |- error: 'ShaderLibrary' is only available in macOS 14.0 or newer
   |             `- note: add 'if #available' version check
19 |         )
20 |     }
BUILD FAILURE 6.2 macosSpm