diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a53207a8..f5c8b0a0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -19,7 +19,7 @@ jobs: - platform: iOS scheme: "SWXMLHash iOS" action: "build-for-testing test-without-building" - sdk-and-dest: "-sdk iphonesimulator -destination \"OS=17.2,name=iPhone 15\"" + sdk-and-dest: "-sdk iphonesimulator -destination \"name=iPhone 16,OS=latest\"" - platform: tvOS scheme: "SWXMLHash tvOS" @@ -38,7 +38,7 @@ jobs: - uses: maxim-lobanov/setup-xcode@ed7a3b1fda3918c0306d1b724322adc0b8cc0a90 # using @v1 with: - xcode-version: "16.2" + xcode-version: latest-stable - name: Build and Test env: @@ -61,24 +61,6 @@ jobs: fail-fast: false matrix: include: - - image: swift:5.8-focal - skip-testing: true - - - image: swift:5.8-jammy - skip-testing: true - - - image: swift:5.8-rhel-ubi9 - skip-testing: true - - - image: swift:5.9-focal - skip-testing: true - - - image: swift:5.9-jammy - skip-testing: true - - - image: swift:5.9-rhel-ubi9 - skip-testing: true - - image: swift:5.10-focal skip-testing: true @@ -96,6 +78,15 @@ jobs: - image: swift:6.0-rhel-ubi9 perform-testing: true + + - image: swift:6.4-jammy + perform-testing: true + + - image: swift:6.4-noble + perform-testing: true + + - image: swift:6.4-rhel-ubi9 + perform-testing: true container: image: ${{ matrix.image }} timeout-minutes: 10 @@ -118,32 +109,18 @@ jobs: name: Windows Test runs-on: windows-2022 timeout-minutes: 10 - strategy: - fail-fast: false - matrix: - include: - - branch: swift-6.1-release - tag: 6.1-RELEASE - perform-testing: true - steps: - name: Install Swift - uses: compnerd/gha-setup-swift@eeda069c5bc95ac8a9ac5cea7d4f588ae5420ca5 - # using @main + uses: SwiftyLab/setup-swift@9014d4136569075c696d4151c7810ecde8712907 + # using @v1.14.1 with: - branch: ${{ matrix.branch}} - tag: ${{ matrix.tag }} + swift-version: "6.4" - name: Checkout uses: actions/checkout@v6 with: persist-credentials: false - - name: Build - if: ${{ matrix.skip-testing }} - run: | - swift build - name: Build and test - if: ${{ matrix.perform-testing }} run: | swift build --build-tests swift test diff --git a/.gitignore b/.gitignore index 423e5959..93953bdc 100644 --- a/.gitignore +++ b/.gitignore @@ -37,6 +37,9 @@ playground.xcworkspace # Packages/ .build/ +# Xcode-generated workspace/settings created when opening Package.swift directly +.swiftpm/ + # CocoaPods # # We recommend against adding the Pods directory to your .gitignore. However diff --git a/.swift-version b/.swift-version new file mode 100644 index 00000000..c596943a --- /dev/null +++ b/.swift-version @@ -0,0 +1 @@ +6.4 diff --git a/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a6..00000000 --- a/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/README.md b/README.md index d564018d..3213fe6a 100644 --- a/README.md +++ b/README.md @@ -27,8 +27,8 @@ The API takes a lot of inspiration from ## Requirements -- iOS 8.0+ / Mac OS X 10.9+ / tvOS 9.0+ / watchOS 2.0+ -- Xcode 8.0+ +- iOS 11.0+ / macOS 10.13+ / tvOS 11.0+ / watchOS 4.0+ +- Xcode 16.0+ / Swift 6.0+ ## Installation diff --git a/Source/FullXMLParser.swift b/Source/FullXMLParser.swift index ed91ce4a..05be5ba0 100644 --- a/Source/FullXMLParser.swift +++ b/Source/FullXMLParser.swift @@ -95,17 +95,9 @@ class FullXMLParser: NSObject, SimpleXmlParser, XMLParserDelegate { } func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error) { - #if os(Linux) && !swift(>=4.1.50) - if let err = parseError as? NSError { - parsingError = ParsingError( - line: err.userInfo["NSXMLParserErrorLineNumber"] as? Int ?? 0, - column: err.userInfo["NSXMLParserErrorColumn"] as? Int ?? 0) - } - #else let err = parseError as NSError parsingError = ParsingError( line: err.userInfo["NSXMLParserErrorLineNumber"] as? Int ?? 0, column: err.userInfo["NSXMLParserErrorColumn"] as? Int ?? 0) - #endif } }