The Swift Package Index logo.Swift Package Index

Build Information

Failed to build OEVoice, reference 1.4.2 (6c75de), with Swift 6.2 for macOS (SPM) on 24 Jun 2025 05:21:13 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ryanlintott/OEVoice.git
Reference: 1.4.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/ryanlintott/OEVoice
 * tag               1.4.2      -> FETCH_HEAD
HEAD is now at 6c75dea Updated to work with changed voice ids in iOS 18.5 Updated the readme
Cloned https://github.com/ryanlintott/OEVoice.git
Revision (git rev-parse @):
6c75deab37e5776b2421082e4ab46ac959fd7075
SUCCESS checkout https://github.com/ryanlintott/OEVoice.git at 1.4.2
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/ryanlintott/OEVoice.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-1EA4D86E10B52AF.txt
[3/12] Compiling OEVoice OEVoiceError.swift
[4/13] Compiling OEVoice SpecialCharacter.swift
[5/13] Compiling OEVoice OEVoice.swift
[6/13] Compiling OEVoice AttributedString-extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:11:18: error: 'AttributedString' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        |         `- error: 'AttributedString' is only available in macOS 12 or newer
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:19:45: error: 'range(of:options:locale:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
14 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
15 |     func accessibilityIPA(_ phrases: [String: String]) -> Self {
   |          `- note: add @available attribute to enclosing instance method
16 |         var attributedString = self
17 |
18 |         phrases.forEach { phrase in
19 |             if let range = attributedString.range(of: phrase.key) {
   |                                             |- error: 'range(of:options:locale:)' is only available in macOS 12 or newer
   |                                             `- note: add 'if #available' version check
20 |                 let phonetic = phrase.value
21 |                 // apply ipa pronunciation
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:22:17: error: 'subscript(dynamicMember:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
14 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
15 |     func accessibilityIPA(_ phrases: [String: String]) -> Self {
   |          `- note: add @available attribute to enclosing instance method
16 |         var attributedString = self
17 |
   :
20 |                 let phonetic = phrase.value
21 |                 // apply ipa pronunciation
22 |                 attributedString[range].accessibilitySpeechPhoneticNotation = phonetic
   |                 |- error: 'subscript(dynamicMember:)' is only available in macOS 12 or newer
   |                 `- note: add 'if #available' version check
23 |             }
24 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:22:17: error: 'subscript(_:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
14 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
15 |     func accessibilityIPA(_ phrases: [String: String]) -> Self {
   |          `- note: add @available attribute to enclosing instance method
16 |         var attributedString = self
17 |
   :
20 |                 let phonetic = phrase.value
21 |                 // apply ipa pronunciation
22 |                 attributedString[range].accessibilitySpeechPhoneticNotation = phonetic
   |                 |- error: 'subscript(_:)' is only available in macOS 12 or newer
   |                 `- note: add 'if #available' version check
23 |             }
24 |         }
<unknown>:0: error: 'subscript(dynamicMember:)' is only available in macOS 12.0 or newer
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:37:45: error: 'range(of:options:locale:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
31 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
32 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
33 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> Self {
   |          `- note: add @available attribute to enclosing instance method
34 |         var attributedString = self
35 |
36 |         phrases.forEach { phrase in
37 |             if let range = attributedString.range(of: phrase.key) {
   |                                             |- error: 'range(of:options:locale:)' is only available in macOS 12 or newer
   |                                             `- note: add 'if #available' version check
38 |                 let phonetic = voice.adjustIPAString(phrase.value)
39 |                 // this doesn't seem to do anything
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:42:17: error: 'subscript(dynamicMember:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
31 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
32 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
33 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> Self {
   |          `- note: add @available attribute to enclosing instance method
34 |         var attributedString = self
35 |
   :
40 | //                attributedString[range].languageIdentifier = "en-US"
41 |                 // apply ipa pronunciation
42 |                 attributedString[range].accessibilitySpeechPhoneticNotation = phonetic
   |                 |- error: 'subscript(dynamicMember:)' is only available in macOS 12 or newer
   |                 `- note: add 'if #available' version check
43 |
44 |                 // This should add "Old English" as a VoiceOver announced attribute but it doesn't anounce anything with voice over
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:42:17: error: 'subscript(_:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
31 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
32 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
33 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> Self {
   |          `- note: add @available attribute to enclosing instance method
34 |         var attributedString = self
35 |
   :
40 | //                attributedString[range].languageIdentifier = "en-US"
41 |                 // apply ipa pronunciation
42 |                 attributedString[range].accessibilitySpeechPhoneticNotation = phonetic
   |                 |- error: 'subscript(_:)' is only available in macOS 12 or newer
   |                 `- note: add 'if #available' version check
43 |
44 |                 // This should add "Old English" as a VoiceOver announced attribute but it doesn't anounce anything with voice over
<unknown>:0: error: 'subscript(dynamicMember:)' is only available in macOS 12.0 or newer
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:64:13: error: 'subscript(dynamicMember:)' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
54 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
55 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
56 |     func accessibilityOldEnglishIPA(_ ipa: String?, voice: OEVoice = .default) -> Self {
   |          `- note: add @available attribute to enclosing instance method
57 |         var attributedString = self
58 |
   :
62 | //            attributedString.languageIdentifier = "en-US"
63 |             // apply ipa pronunciation
64 |             attributedString.accessibilitySpeechPhoneticNotation = phonetic
   |             |- error: 'subscript(dynamicMember:)' is only available in macOS 12 or newer
   |             `- note: add 'if #available' version check
65 |         }
66 |
<unknown>:0: error: 'subscript(dynamicMember:)' is only available in macOS 12.0 or newer
[7/13] Compiling OEVoice NSAttributedString-extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/NSAttributedString-extensions.swift:19:45: error: type 'NSAttributedString.Key' has no member 'accessibilitySpeechIPANotation'
17 |         let attributedString = self
18 |
19 |         let ipaKey = NSAttributedString.Key.accessibilitySpeechIPANotation
   |                                             `- error: type 'NSAttributedString.Key' has no member 'accessibilitySpeechIPANotation'
20 |
21 |         phrases.forEach { (phrase, ipa) in
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/NSAttributedString-extensions.swift:28:22: error: type 'NSAttributedString.Key' has no member 'accessibilityTextCustom'
26 |                 attributedString.setAttributes([
27 |                     ipaKey: phonetic,
28 |                     .accessibilityTextCustom: ["Old English"],
   |                      `- error: type 'NSAttributedString.Key' has no member 'accessibilityTextCustom'
29 |                     .accessibilitySpeechLanguage: OEVoice.preferredLanguage
30 |                 ], range: range)
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/NSAttributedString-extensions.swift:29:22: error: type 'NSAttributedString.Key' has no member 'accessibilitySpeechLanguage'
27 |                     ipaKey: phonetic,
28 |                     .accessibilityTextCustom: ["Old English"],
29 |                     .accessibilitySpeechLanguage: OEVoice.preferredLanguage
   |                      `- error: type 'NSAttributedString.Key' has no member 'accessibilitySpeechLanguage'
30 |                 ], range: range)
31 |             }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/NSAttributedString-extensions.swift:47:58: error: type 'NSAttributedString.Key' has no member 'accessibilitySpeechIPANotation'
45 |     func setSpeechIPAMatchingAccessibilityIPA() {
46 |         let range = NSMakeRange(0, length)
47 |         let accessibilityIPAKey = NSAttributedString.Key.accessibilitySpeechIPANotation
   |                                                          `- error: type 'NSAttributedString.Key' has no member 'accessibilitySpeechIPANotation'
48 |         let pronunciationIPAKey = NSAttributedString.Key(rawValue: AVSpeechSynthesisIPANotationAttribute)
49 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/NSAttributedString-extensions.swift:48:68: error: 'AVSpeechSynthesisIPANotationAttribute' is only available in macOS 10.14 or newer
 9 | import Foundation
10 |
11 | public extension NSMutableAttributedString {
   |        `- note: add @available attribute to enclosing extension
12 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> Self {
13 |         guard self.length > 0 else {
   :
43 |     }
44 |
45 |     func setSpeechIPAMatchingAccessibilityIPA() {
   |          `- note: add @available attribute to enclosing instance method
46 |         let range = NSMakeRange(0, length)
47 |         let accessibilityIPAKey = NSAttributedString.Key.accessibilitySpeechIPANotation
48 |         let pronunciationIPAKey = NSAttributedString.Key(rawValue: AVSpeechSynthesisIPANotationAttribute)
   |                                                                    |- error: 'AVSpeechSynthesisIPANotationAttribute' is only available in macOS 10.14 or newer
   |                                                                    `- note: add 'if #available' version check
49 |
50 |         enumerateAttributes(in: range) { values, range, stop in
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/13] Emitting module OEVoice
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVAudioSession+setSpeechSession.swift:10:18: error: 'AVAudioSession' is unavailable in macOS
 8 | import AVFoundation
 9 |
10 | public extension AVAudioSession {
   |                  `- error: 'AVAudioSession' is unavailable in macOS
11 |     /// Sets audioSession to play on mute, pause other spoken audio and duck anything else.
12 |     func setSpeechSession() {
/Applications/Xcode-26.0.0-Beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:30:12: note: 'AVAudioSession' has been explicitly marked unavailable here
 28 | NS_SWIFT_SENDABLE
 29 | API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos)
 30 | @interface AVAudioSession : NSObject {
    |            `- note: 'AVAudioSession' has been explicitly marked unavailable here
 31 | @private
 32 | //	Reenable once rdar://135815013 is unblocked
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:46:54: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                                    `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:69:43: error: 'AttributedString' is only available in macOS 12 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
67 |
68 |     @available(iOS 15, watchOS 8, tvOS 15, *)
69 |     public func speak(_ attributedString: AttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                         `- error: 'AttributedString' is only available in macOS 12 or newer
   |                 `- note: add @available attribute to enclosing instance method
70 |         speak(NSMutableAttributedString(attributedString), voice: voice, willSpeak: willSpeak)
71 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:69:68: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
67 |
68 |     @available(iOS 15, watchOS 8, tvOS 15, *)
69 |     public func speak(_ attributedString: AttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                                                  `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
   |                 `- note: add @available attribute to enclosing instance method
70 |         speak(NSMutableAttributedString(attributedString), voice: voice, willSpeak: willSpeak)
71 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:73:84: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
71 |     }
72 |
73 |     public func speak(_ mutableAttributedString: NSMutableAttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                                                                  `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
   |                 `- note: add @available attribute to enclosing instance method
74 |         mutableAttributedString.setSpeechIPAMatchingAccessibilityIPA()
75 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:11:38: error: 'AVSpeechSynthesizer' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              |                       `- error: 'AVSpeechSynthesizer' is only available in macOS 10.14 or newer
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:56:24: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 54 |     /// Init from AVSpeechSynthesisVoice
 55 |     /// - Parameter voice: voice
 56 |     init? (from voice: AVSpeechSynthesisVoice) {
    |     |                  `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |     `- note: add @available attribute to enclosing initializer
 57 |         guard let oeVoice = Self.allCases.first(where: { $0.voice == voice }) else {
 58 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:70:16: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         |      `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:98:36: error: 'AttributedString' is only available in macOS 12 or newer
 95 |
 96 | @available(iOS 15, watchOS 8, tvOS 15, *)
 97 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 98 |     func speak(_ attributedString: AttributedString, synthesizer: AVSpeechSynthesizerIPA, willSpeak: ((String) -> Void)? = nil) throws {
    |          |                         `- error: 'AttributedString' is only available in macOS 12 or newer
    |          `- note: add @available attribute to enclosing instance method
 99 |         try Self.speak(attributedString, oeVoice: self, synthesizer: synthesizer, willSpeak: willSpeak)
100 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:102:43: error: 'AttributedString' is only available in macOS 12 or newer
 95 |
 96 | @available(iOS 15, watchOS 8, tvOS 15, *)
 97 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 98 |     func speak(_ attributedString: AttributedString, synthesizer: AVSpeechSynthesizerIPA, willSpeak: ((String) -> Void)? = nil) throws {
 99 |         try Self.speak(attributedString, oeVoice: self, synthesizer: synthesizer, willSpeak: willSpeak)
100 |     }
101 |
102 |     static func speak(_ attributedString: AttributedString, oeVoice: OEVoice = .default, synthesizer: AVSpeechSynthesizerIPA, force: Bool = false, willSpeak: ((String) -> Void)? = nil) throws {
    |                 |                         `- error: 'AttributedString' is only available in macOS 12 or newer
    |                 `- note: add @available attribute to enclosing static method
103 |         guard let voice = oeVoice.voice else {
104 |             throw OEVoiceError.voiceNotFound
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/AttributedString-extensions.swift:11:18: error: 'AttributedString' is only available in macOS 12 or newer
 9 |
10 | @available(iOS 15, watchOS 8, tvOS 15, *)
11 | public extension AttributedString {
   |        |         `- error: 'AttributedString' is only available in macOS 12 or newer
   |        `- note: add @available attribute to enclosing extension
12 |     /// Adds accessible phonetic pronunciation for specified phrases.
13 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:39:93: error: 'AttributedString' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
37 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
38 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
39 |     func oldEnglishIPAAttributed(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          |                                                                                  `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
40 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
41 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:48:80: error: 'AttributedString' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
46 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
47 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
48 |     func oldEnglishIPAAttributed(_ ipa: String?, voice: OEVoice = .default) -> AttributedString {
   |          |                                                                     `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
49 |         AttributedString(self).accessibilityOldEnglishIPA(ipa, voice: voice)
50 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:68:86: error: 'AttributedString' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
67 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
68 |     func accessibilityIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          |                                                                           `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
69 |         AttributedString(self).accessibilityIPA(phrases)
70 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:77:96: error: 'AttributedString' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
75 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
76 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
77 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          |                                                                                     `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
78 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
79 |     }
[9/13] Compiling OEVoice AVSpeechSynthesizerIPA+OE.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA+OE.swift:17:36: error: 'init(identifier:)' is only available in macOS 10.14 or newer
 8 | import AVFoundation
 9 |
10 | public extension AVSpeechSynthesizerIPA {
   |        `- note: add @available attribute to enclosing extension
11 |     static var oeVoiceSupported: AVSpeechSynthesizerIPA {
12 |         AVSpeechSynthesizerIPA(preferredLanguages: OEVoice.supportedLanguages)
13 |     }
14 |
15 |     func speakOETest1() {
   |          `- note: add @available attribute to enclosing instance method
16 |         // This should sound like "wath"
17 |         speakIPA("waːθ", voice: .init(identifier: "com.apple.ttsbundle.siri_Nicky_en-US_compact")!)
   |                                  |- error: 'init(identifier:)' is only available in macOS 10.14 or newer
   |                                  `- note: add 'if #available' version check
18 |     }
19 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA+OE.swift:22:36: error: 'init(identifier:)' is only available in macOS 10.14 or newer
 8 | import AVFoundation
 9 |
10 | public extension AVSpeechSynthesizerIPA {
   |        `- note: add @available attribute to enclosing extension
11 |     static var oeVoiceSupported: AVSpeechSynthesizerIPA {
12 |         AVSpeechSynthesizerIPA(preferredLanguages: OEVoice.supportedLanguages)
   :
18 |     }
19 |
20 |     func speakOETest2() {
   |          `- note: add @available attribute to enclosing instance method
21 |         // This should sound like "wath"
22 |         speakIPA("blɛnd", voice: .init(identifier: "com.apple.ttsbundle.siri_Nicky_en-US_compact")!)
   |                                   |- error: 'init(identifier:)' is only available in macOS 10.14 or newer
   |                                   `- note: add 'if #available' version check
23 |     }
24 | }
[10/13] Compiling OEVoice AVAudioSession+setSpeechSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVAudioSession+setSpeechSession.swift:10:18: error: 'AVAudioSession' is unavailable in macOS
 8 | import AVFoundation
 9 |
10 | public extension AVAudioSession {
   |                  `- error: 'AVAudioSession' is unavailable in macOS
11 |     /// Sets audioSession to play on mute, pause other spoken audio and duck anything else.
12 |     func setSpeechSession() {
/Applications/Xcode-26.0.0-Beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:30:12: note: 'AVAudioSession' has been explicitly marked unavailable here
 28 | NS_SWIFT_SENDABLE
 29 | API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos)
 30 | @interface AVAudioSession : NSObject {
    |            `- note: 'AVAudioSession' has been explicitly marked unavailable here
 31 | @private
 32 | //	Reenable once rdar://135815013 is unblocked
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVAudioSession+setSpeechSession.swift:14:22: error: 'setCategory(_:options:)' is unavailable in macOS
12 |     func setSpeechSession() {
13 |         do {
14 |             try self.setCategory(.playback, options: [.interruptSpokenAudioAndMixWithOthers, .duckOthers])
   |                      `- error: 'setCategory(_:options:)' is unavailable in macOS
15 |         } catch {
16 |             print("Error: \(error.localizedDescription)")
AVFAudio.AVAudioSession.setCategory:3:13: note: 'setCategory(_:options:)' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 |   open func setCategory(_ category: AVAudioSession.Category, options: AVAudioSession.CategoryOptions = []) throws}
  |             `- note: 'setCategory(_:options:)' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVAudioSession+setSpeechSession.swift:14:35: error: 'playback' is unavailable in macOS
12 |     func setSpeechSession() {
13 |         do {
14 |             try self.setCategory(.playback, options: [.interruptSpokenAudioAndMixWithOthers, .duckOthers])
   |                                   `- error: 'playback' is unavailable in macOS
15 |         } catch {
16 |             print("Error: \(error.localizedDescription)")
/Applications/Xcode-26.0.0-Beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSessionTypes.h:100:40: note: 'playback' has been explicitly marked unavailable here
 98 |
 99 | /*! Use this category for music tracks.*/
100 | OS_EXPORT AVAudioSessionCategory const AVAudioSessionCategoryPlayback			API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
    |                                        `- note: 'playback' has been explicitly marked unavailable here
101 |
102 | /*! Use this category when recording audio. */
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVAudioSession+setSpeechSession.swift:14:56: error: 'interruptSpokenAudioAndMixWithOthers' is unavailable in macOS
12 |     func setSpeechSession() {
13 |         do {
14 |             try self.setCategory(.playback, options: [.interruptSpokenAudioAndMixWithOthers, .duckOthers])
   |                                                        `- error: 'interruptSpokenAudioAndMixWithOthers' is unavailable in macOS
15 |         } catch {
16 |             print("Error: \(error.localizedDescription)")
AVFAudio.AVAudioSession.CategoryOptions.interruptSpokenAudioAndMixWithOthers:4:23: note: 'interruptSpokenAudioAndMixWithOthers' has been explicitly marked unavailable here
2 |   struct CategoryOptions {
3 | @available(macOS, unavailable)
4 |     public static var interruptSpokenAudioAndMixWithOthers: AVAudioSession.CategoryOptions { get }  }
  |                       `- note: 'interruptSpokenAudioAndMixWithOthers' has been explicitly marked unavailable here
5 | }
6 |
[11/13] Compiling OEVoice AVSpeechSynthesizerIPA.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:46:54: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                                    `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:69:43: error: 'AttributedString' is only available in macOS 12 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
67 |
68 |     @available(iOS 15, watchOS 8, tvOS 15, *)
69 |     public func speak(_ attributedString: AttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                         `- error: 'AttributedString' is only available in macOS 12 or newer
   |                 `- note: add @available attribute to enclosing instance method
70 |         speak(NSMutableAttributedString(attributedString), voice: voice, willSpeak: willSpeak)
71 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:69:68: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
67 |
68 |     @available(iOS 15, watchOS 8, tvOS 15, *)
69 |     public func speak(_ attributedString: AttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                                                  `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
   |                 `- note: add @available attribute to enclosing instance method
70 |         speak(NSMutableAttributedString(attributedString), voice: voice, willSpeak: willSpeak)
71 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:73:84: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
71 |     }
72 |
73 |     public func speak(_ mutableAttributedString: NSMutableAttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 |                                                                  `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
   |                 `- note: add @available attribute to enclosing instance method
74 |         mutableAttributedString.setSpeechIPAMatchingAccessibilityIPA()
75 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:11:38: error: 'AVSpeechSynthesizer' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              |                       `- error: 'AVSpeechSynthesizer' is only available in macOS 10.14 or newer
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:28:19: error: 'AVSpeechUtterance' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
14 |     public init(language: String) {
   |            `- note: add @available attribute to enclosing initializer
15 |         self.language = language
16 |         super.init()
   :
26 |             // Force AVSpeechSynthesizer to speak.
27 |             // This most likely initializes some internal language setting that references the first preferredLanguage in UserDefaults.
28 |             speak(AVSpeechUtterance(string: ""))
   |                   |- error: 'AVSpeechUtterance' is only available in macOS 10.14 or newer
   |                   `- note: add 'if #available' version check
29 |             stopSpeaking(at: .immediate)
30 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:50:65: error: 'AVSpeechSynthesisIPANotationAttribute' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
49 |         let range = NSString(string: ipaString).range(of: ipaString)
50 |         let pronunciationKey = NSAttributedString.Key(rawValue: AVSpeechSynthesisIPANotationAttribute)
   |                                                                 |- error: 'AVSpeechSynthesisIPANotationAttribute' is only available in macOS 10.14 or newer
   |                                                                 `- note: add 'if #available' version check
51 |         mutableAttributedString.setAttributes([pronunciationKey: ipaString], range: range)
52 |         print(mutableAttributedString.attributes(at: 0, longestEffectiveRange: nil, in: range))
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:54:25: error: 'AVSpeechUtterance' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
   :
52 |         print(mutableAttributedString.attributes(at: 0, longestEffectiveRange: nil, in: range))
53 |
54 |         let utterance = AVSpeechUtterance(attributedString: mutableAttributedString)
   |                         |- error: 'AVSpeechUtterance' is only available in macOS 10.14 or newer
   |                         `- note: add 'if #available' version check
55 |         print(utterance.attributedSpeechString.attributes(at: 0, longestEffectiveRange: nil, in: range))
56 |         utterance.voice = voice
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:54:25: error: 'init(attributedString:)' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
   :
52 |         print(mutableAttributedString.attributes(at: 0, longestEffectiveRange: nil, in: range))
53 |
54 |         let utterance = AVSpeechUtterance(attributedString: mutableAttributedString)
   |                         |- error: 'init(attributedString:)' is only available in macOS 10.14 or newer
   |                         `- note: add 'if #available' version check
55 |         print(utterance.attributedSpeechString.attributes(at: 0, longestEffectiveRange: nil, in: range))
56 |         utterance.voice = voice
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:55:25: error: 'attributedSpeechString' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
   :
53 |
54 |         let utterance = AVSpeechUtterance(attributedString: mutableAttributedString)
55 |         print(utterance.attributedSpeechString.attributes(at: 0, longestEffectiveRange: nil, in: range))
   |                         |- error: 'attributedSpeechString' is only available in macOS 10.14 or newer
   |                         `- note: add 'if #available' version check
56 |         utterance.voice = voice
57 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:64:55: error: 'identifier' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
44 |     ///   - voiceIdentifier: Voice to use
45 |     ///   - willSpeak: Runs just before speech and includes exact string to be spoken.
46 |     public func speakIPA(_ ipaString: String, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
47 |         let mutableAttributedString = NSMutableAttributedString(string: ipaString)
48 |
   :
62 |
63 |         willSpeak?(utterance.speechString)
64 |         print("speakIPA: \(ipaString), voice: \(voice.identifier), language: \(voice.language), AVLanguage: \(language), preferredLanguages: \(Locale.preferredLanguages)")
   |                                                       |- error: 'identifier' is only available in macOS 10.14 or newer
   |                                                       `- note: add 'if #available' version check
65 |         speak(utterance)
66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:70:15: error: 'init(_:)' is only available in macOS 12 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
67 |
68 |     @available(iOS 15, watchOS 8, tvOS 15, *)
69 |     public func speak(_ attributedString: AttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
70 |         speak(NSMutableAttributedString(attributedString), voice: voice, willSpeak: willSpeak)
   |               |- error: 'init(_:)' is only available in macOS 12 or newer
   |               `- note: add 'if #available' version check
71 |     }
72 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:76:25: error: 'AVSpeechUtterance' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
71 |     }
72 |
73 |     public func speak(_ mutableAttributedString: NSMutableAttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
74 |         mutableAttributedString.setSpeechIPAMatchingAccessibilityIPA()
75 |
76 |         let utterance = AVSpeechUtterance(attributedString: mutableAttributedString)
   |                         |- error: 'AVSpeechUtterance' is only available in macOS 10.14 or newer
   |                         `- note: add 'if #available' version check
77 |         utterance.voice = voice
78 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/AVSpeechSynthesizerIPA.swift:76:25: error: 'init(attributedString:)' is only available in macOS 10.14 or newer
 9 | import AVFoundation
10 |
11 | public class AVSpeechSynthesizerIPA: AVSpeechSynthesizer {
   |              `- note: add @available attribute to enclosing class
12 |     let language: String
13 |
   :
71 |     }
72 |
73 |     public func speak(_ mutableAttributedString: NSMutableAttributedString, voice: AVSpeechSynthesisVoice, willSpeak: ((String) -> Void)? = nil) {
   |                 `- note: add @available attribute to enclosing instance method
74 |         mutableAttributedString.setSpeechIPAMatchingAccessibilityIPA()
75 |
76 |         let utterance = AVSpeechUtterance(attributedString: mutableAttributedString)
   |                         |- error: 'init(attributedString:)' is only available in macOS 10.14 or newer
   |                         `- note: add 'if #available' version check
77 |         utterance.voice = voice
78 |
[12/13] Compiling OEVoice OEVoice+AVFoundation.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:56:24: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 54 |     /// Init from AVSpeechSynthesisVoice
 55 |     /// - Parameter voice: voice
 56 |     init? (from voice: AVSpeechSynthesisVoice) {
    |     |                  `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |     `- note: add @available attribute to enclosing initializer
 57 |         guard let oeVoice = Self.allCases.first(where: { $0.voice == voice }) else {
 58 |             return nil
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:70:16: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         |      `- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:98:36: error: 'AttributedString' is only available in macOS 12 or newer
 95 |
 96 | @available(iOS 15, watchOS 8, tvOS 15, *)
 97 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 98 |     func speak(_ attributedString: AttributedString, synthesizer: AVSpeechSynthesizerIPA, willSpeak: ((String) -> Void)? = nil) throws {
    |          |                         `- error: 'AttributedString' is only available in macOS 12 or newer
    |          `- note: add @available attribute to enclosing instance method
 99 |         try Self.speak(attributedString, oeVoice: self, synthesizer: synthesizer, willSpeak: willSpeak)
100 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:102:43: error: 'AttributedString' is only available in macOS 12 or newer
 95 |
 96 | @available(iOS 15, watchOS 8, tvOS 15, *)
 97 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 98 |     func speak(_ attributedString: AttributedString, synthesizer: AVSpeechSynthesizerIPA, willSpeak: ((String) -> Void)? = nil) throws {
 99 |         try Self.speak(attributedString, oeVoice: self, synthesizer: synthesizer, willSpeak: willSpeak)
100 |     }
101 |
102 |     static func speak(_ attributedString: AttributedString, oeVoice: OEVoice = .default, synthesizer: AVSpeechSynthesizerIPA, force: Bool = false, willSpeak: ((String) -> Void)? = nil) throws {
    |                 |                         `- error: 'AttributedString' is only available in macOS 12 or newer
    |                 `- note: add @available attribute to enclosing static method
103 |         guard let voice = oeVoice.voice else {
104 |             throw OEVoiceError.voiceNotFound
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:71:12: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
    |            |- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |            `- note: add 'if #available' version check
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:71:71: error: 'identifier' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
    |                                                                       |- error: 'identifier' is only available in macOS 10.14 or newer
    |                                                                       `- note: add 'if #available' version check
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:72:20: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
    |                    |- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |                    `- note: add 'if #available' version check
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
 74 |             return AVSpeechSynthesisVoice(identifier: legacyIdentifier)
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:72:20: error: 'init(identifier:)' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
    |                    |- error: 'init(identifier:)' is only available in macOS 10.14 or newer
    |                    `- note: add 'if #available' version check
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
 74 |             return AVSpeechSynthesisVoice(identifier: legacyIdentifier)
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:73:42: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
    |                                          |- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |                                          `- note: add 'if #available' version check
 74 |             return AVSpeechSynthesisVoice(identifier: legacyIdentifier)
 75 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:73:89: error: 'identifier' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
    |                                                                                         |- error: 'identifier' is only available in macOS 10.14 or newer
    |                                                                                         `- note: add 'if #available' version check
 74 |             return AVSpeechSynthesisVoice(identifier: legacyIdentifier)
 75 |         }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:74:20: error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
 74 |             return AVSpeechSynthesisVoice(identifier: legacyIdentifier)
    |                    |- error: 'AVSpeechSynthesisVoice' is only available in macOS 10.14 or newer
    |                    `- note: add 'if #available' version check
 75 |         }
 76 |         return nil
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/OEVoice+AVFoundation.swift:74:20: error: 'init(identifier:)' is only available in macOS 10.14 or newer
  8 | import AVFoundation
  9 |
 10 | public extension OEVoice {
    |        `- note: add @available attribute to enclosing extension
 11 |     static let idPrefix = "com.apple.ttsbundle."
 12 |     static let preferredLanguage = "en-US"
    :
 68 |     }
 69 |
 70 |     var voice: AVSpeechSynthesisVoice? {
    |         `- note: add @available attribute to enclosing property
 71 |         if AVSpeechSynthesisVoice.speechVoices().contains(where: { $0.identifier == identifier }) {
 72 |             return AVSpeechSynthesisVoice(identifier: identifier)
 73 |         } else if let legacyIdentifier = AVSpeechSynthesisVoice.speechVoices().map({ $0.identifier }).first(where: { legacyIdentifiers.contains($0) }) {
 74 |             return AVSpeechSynthesisVoice(identifier: legacyIdentifier)
    |                    |- error: 'init(identifier:)' is only available in macOS 10.14 or newer
    |                    `- note: add 'if #available' version check
 75 |         }
 76 |         return nil
[13/13] Compiling OEVoice String-extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:39:93: error: 'AttributedString' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
37 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
38 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
39 |     func oldEnglishIPAAttributed(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          |                                                                                  `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
40 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
41 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:48:80: error: 'AttributedString' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
46 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
47 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
48 |     func oldEnglishIPAAttributed(_ ipa: String?, voice: OEVoice = .default) -> AttributedString {
   |          |                                                                     `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
49 |         AttributedString(self).accessibilityOldEnglishIPA(ipa, voice: voice)
50 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:68:86: error: 'AttributedString' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
67 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
68 |     func accessibilityIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          |                                                                           `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
69 |         AttributedString(self).accessibilityIPA(phrases)
70 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:77:96: error: 'AttributedString' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
75 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
76 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
77 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          |                                                                                     `- error: 'AttributedString' is only available in macOS 12 or newer
   |          `- note: add @available attribute to enclosing instance method
78 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
79 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:40:9: error: 'AttributedString' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
37 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
38 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
39 |     func oldEnglishIPAAttributed(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
40 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
   |         |- error: 'AttributedString' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
41 |     }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:40:9: error: 'init(_:attributes:)' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
37 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
38 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
39 |     func oldEnglishIPAAttributed(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
40 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
   |         |- error: 'init(_:attributes:)' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
41 |     }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:49:9: error: 'AttributedString' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
46 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
47 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
48 |     func oldEnglishIPAAttributed(_ ipa: String?, voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
49 |         AttributedString(self).accessibilityOldEnglishIPA(ipa, voice: voice)
   |         |- error: 'AttributedString' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
50 |     }
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:49:9: error: 'init(_:attributes:)' is only available in macOS 12 or newer
31 |
32 | @available(iOS 15, watchOS 8, tvOS 15, *)
33 | public extension String {
   |        `- note: add @available attribute to enclosing extension
34 |     /// Create an `AttributedString` with accessible Old English IPA pronunciation for specified phrases.
35 |     /// WARNING: User voice may not match supported OEVoice so pronunciations may be incorrect
   :
46 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
47 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
48 |     func oldEnglishIPAAttributed(_ ipa: String?, voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
49 |         AttributedString(self).accessibilityOldEnglishIPA(ipa, voice: voice)
   |         |- error: 'init(_:attributes:)' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
50 |     }
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:69:9: error: 'AttributedString' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
67 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
68 |     func accessibilityIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
69 |         AttributedString(self).accessibilityIPA(phrases)
   |         |- error: 'AttributedString' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
70 |     }
71 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:69:9: error: 'init(_:attributes:)' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
67 |     /// - Returns: `AttributedString` with accessible phonetic pronunciations for specified phrases
68 |     func accessibilityIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
69 |         AttributedString(self).accessibilityIPA(phrases)
   |         |- error: 'init(_:attributes:)' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
70 |     }
71 |
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:78:9: error: 'AttributedString' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
75 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
76 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
77 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
78 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
   |         |- error: 'AttributedString' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
79 |     }
80 | }
/Users/admin/builder/spi-builder-workspace/Sources/OEVoice/extensions/String-extensions.swift:78:9: error: 'init(_:attributes:)' is only available in macOS 12 or newer
62 |
63 | @available(iOS 15, watchOS 8, tvOS 15, *)
64 | public extension String {
   |        `- note: add @available attribute to enclosing extension
65 |     /// Adds accessible phonetic pronunciation for specified phrases.
66 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
   :
75 |     /// - Parameter phrases: Dictionary of phrases and ipa pronunciations for those phrases
76 |     /// - Returns: `AttributedString` with accessible Old Egnlish IPA pronunciations for specified phrases
77 |     func accessibilityOldEnglishIPA(_ phrases: [String: String], voice: OEVoice = .default) -> AttributedString {
   |          `- note: add @available attribute to enclosing instance method
78 |         AttributedString(self).accessibilityOldEnglishIPA(phrases, voice: voice)
   |         |- error: 'init(_:attributes:)' is only available in macOS 12 or newer
   |         `- note: add 'if #available' version check
79 |     }
80 | }
BUILD FAILURE 6.2 macosSpm