diff --git a/.github/workflows/docs.yml b/.github/workflows/Documentation.yml similarity index 90% rename from .github/workflows/docs.yml rename to .github/workflows/Documentation.yml index 9803ab6..f1d43ac 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/Documentation.yml @@ -18,8 +18,8 @@ jobs: - name: Install Swift uses: tayloraswift/swift-install-action@master with: - swift-prefix: "swift-6.0.1-release/ubuntu2404/swift-6.0.1-RELEASE" - swift-id: "swift-6.0.1-RELEASE-ubuntu24.04" + swift-prefix: "swift-6.0.2-release/ubuntu2404/swift-6.0.2-RELEASE" + swift-id: "swift-6.0.2-RELEASE-ubuntu24.04" - name: Install Unidoc uses: tayloraswift/swift-unidoc-action@master diff --git a/.github/workflows/Tests.yml b/.github/workflows/Tests.yml new file mode 100644 index 0000000..a827569 --- /dev/null +++ b/.github/workflows/Tests.yml @@ -0,0 +1,34 @@ +name: tests + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + linux: + runs-on: ubuntu-24.04 + name: Ubuntu 24.04 + steps: + - name: Install Swift + uses: tayloraswift/swift-install-action@master + with: + swift-prefix: "swift-6.0.2-release/ubuntu2404/swift-6.0.2-RELEASE" + swift-id: "swift-6.0.2-RELEASE-ubuntu24.04" + + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Run tests + run: Scripts/TestAll + + macos: + runs-on: macos-15 + name: macOS + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Run tests + run: Scripts/TestAll diff --git a/.github/workflows/iOS.yml b/.github/workflows/iOS.yml new file mode 100644 index 0000000..f8ba628 --- /dev/null +++ b/.github/workflows/iOS.yml @@ -0,0 +1,14 @@ +name: iOS + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + uses: tayloraswift/swift-device-action/.github/workflows/build.yml@master + with: + xcode-scheme: 'swift-json-Package' + destination: ${{ github.workflow }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index 615fda2..0000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,56 +0,0 @@ -name: test - -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] - -jobs: - linux: - runs-on: ubuntu-24.04 - name: Ubuntu 24.04 - steps: - - name: Install Swift - uses: tayloraswift/swift-install-action@master - with: - swift-prefix: "swift-6.0.1-release/ubuntu2404/swift-6.0.1-RELEASE" - swift-id: "swift-6.0.1-RELEASE-ubuntu24.04" - - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Run pipeline - run: .github/pipeline - - macos: - runs-on: macos-15 - name: macOS - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Run pipeline - run: .github/pipeline - - devices: - runs-on: macos-15 - name: macOS - strategy: - matrix: - device: [ios, tvos, watchos] - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Build - run: | - swift --version - xcrun xcodebuild -list - xcrun xcodebuild build \ - -scheme "JSON" \ - -destination "generic/platform=${{ matrix.device }}" - xcrun xcodebuild build \ - -scheme "JSONLegacy" \ - -destination "generic/platform=${{ matrix.device }}" - diff --git a/.github/workflows/tvOS.yml b/.github/workflows/tvOS.yml new file mode 100644 index 0000000..2d1ce52 --- /dev/null +++ b/.github/workflows/tvOS.yml @@ -0,0 +1,14 @@ +name: tvOS + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + uses: tayloraswift/swift-device-action/.github/workflows/build.yml@master + with: + xcode-scheme: 'swift-json-Package' + destination: ${{ github.workflow }} diff --git a/.github/workflows/visionOS.yml b/.github/workflows/visionOS.yml new file mode 100644 index 0000000..0d3463d --- /dev/null +++ b/.github/workflows/visionOS.yml @@ -0,0 +1,14 @@ +name: visionOS + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + uses: tayloraswift/swift-device-action/.github/workflows/build.yml@master + with: + xcode-scheme: 'swift-json-Package' + destination: ${{ github.workflow }} diff --git a/.github/workflows/watchOS.yml b/.github/workflows/watchOS.yml new file mode 100644 index 0000000..a1c6bf0 --- /dev/null +++ b/.github/workflows/watchOS.yml @@ -0,0 +1,14 @@ +name: watchOS + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + uses: tayloraswift/swift-device-action/.github/workflows/build.yml@master + with: + xcode-scheme: 'swift-json-Package' + destination: ${{ github.workflow }} diff --git a/README.md b/README.md index a908a00..bf7513d 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,9 @@
-***`json`***
`1.0` +***`json`*** -[![ci status](https://github.com/tayloraswift/swift-json/actions/workflows/test.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/test.yml) -[![ci status](https://github.com/tayloraswift/swift-json/actions/workflows/docs.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/docs.yml) - -[![swift package index versions](https://img.shields.io/endpoint?url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2Ftayloraswift%2Fswift-json%2Fbadge%3Ftype%3Dswift-versions)](https://swiftpackageindex.com/tayloraswift/swift-json) -[![swift package index platforms](https://img.shields.io/endpoint?url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2Ftayloraswift%2Fswift-json%2Fbadge%3Ftype%3Dplatforms)](https://swiftpackageindex.com/tayloraswift/swift-json) +[![Tests](https://github.com/tayloraswift/swift-json/actions/workflows/Tests.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/Tests.yml) +[![Documentation](https://github.com/tayloraswift/swift-json/actions/workflows/Documentation.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/Documentation.yml)
@@ -19,3 +16,20 @@ A pure Swift JSON parsing and encoding library designed for high-performance, hi + +## Requirements + +The swift-json library requires Swift 5.10 or later. + + +| Platform | Status | +| -------- | ------ | +| 🐧 Linux | [![Tests](https://github.com/tayloraswift/swift-json/actions/workflows/Tests.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/Tests.yml) | +| 🍏 Darwin | [![Tests](https://github.com/tayloraswift/swift-json/actions/workflows/Tests.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/Tests.yml) | +| 🍏 Darwin (iOS) | [![iOS](https://github.com/tayloraswift/swift-json/actions/workflows/iOS.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/iOS.yml) | +| 🍏 Darwin (tvOS) | [![tvOS](https://github.com/tayloraswift/swift-json/actions/workflows/tvOS.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/tvOS.yml) | +| 🍏 Darwin (visionOS) | [![visionOS](https://github.com/tayloraswift/swift-json/actions/workflows/visionOS.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/visionOS.yml) | +| 🍏 Darwin (watchOS) | [![watchOS](https://github.com/tayloraswift/swift-json/actions/workflows/watchOS.yml/badge.svg)](https://github.com/tayloraswift/swift-json/actions/workflows/watchOS.yml) | + + +[Check deployment minimums](https://swiftinit.org/docs/swift-json#ss:platform-requirements) diff --git a/.github/pipeline b/Scripts/TestAll similarity index 100% rename from .github/pipeline rename to Scripts/TestAll