Add Xcode project for building as a framework #112
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Pull request | |
| permissions: | |
| contents: read | |
| on: | |
| pull_request: | |
| types: [opened, reopened, synchronize] | |
| jobs: | |
| validate_format_config: | |
| name: Validate Format Config | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v4 | |
| - name: Install apt dependencies | |
| run: sudo apt-get -qq update && sudo apt-get -qq -y install curl | |
| - name: Compare against swift-mmio swift-format config | |
| run: | | |
| curl -sL https://raw.githubusercontent.com/apple/swift-mmio/refs/heads/main/.swift-format -o .swift-format-mmio | |
| diff .swift-format .swift-format-mmio | |
| tests: | |
| name: Test | |
| uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main | |
| with: | |
| enable_macos_checks: true | |
| macos_xcode_versions: "[\"26.1\"]" | |
| linux_swift_versions: "[ \"6.2\", \"nightly-6.3\"]" | |
| linux_build_command: swift test --disable-experimental-prebuilts # prebuilt swift-syntax not building | |
| enable_windows_checks: false | |
| embedded: | |
| name: Embedded Test (Linux nightly-6.3) | |
| runs-on: ubuntu-latest | |
| container: | |
| image: swiftlang/swift:nightly-6.3-jammy | |
| steps: | |
| - name: Swift version | |
| run: swift --version | |
| - name: Clang version | |
| run: clang --version | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Build / Test | |
| run: | | |
| ENABLE_EMBEDDED=1 swift test --disable-experimental-prebuilts | |
| echo "Running embedded Swift executable..." | |
| .build/debug/EmbeddedExample | |
| xcodeproject: | |
| name: Xcode project (Xcode 26.1) | |
| runs-on: [self-hosted, macos, "sequoia", "ARM64"] | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Select Xcode | |
| run: echo "DEVELOPER_DIR=/Applications/Xcode_26.1.app" >> $GITHUB_ENV | |
| - name: Swift version | |
| run: xcrun swift --version | |
| - name: Clang version | |
| run: xcrun clang --version | |
| - name: Build / Test | |
| run: xcodebuild -project Xcode/BinaryParsing.xcodeproj build -scheme BinaryParsingTests | |
| timeout-minutes: 60 | |
| soundness: | |
| name: Soundness | |
| uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main | |
| with: | |
| format_check_enabled: true | |
| format_check_container_image: swiftlang/swift:nightly-6.2-jammy | |
| shell_check_enabled: true | |
| yamllint_check_enabled: true | |
| api_breakage_check_enabled: false # doesn't allow skipping prebuilt swift-syntax binary | |
| api_breakage_check_container_image: swiftlang/swift:nightly-6.2-jammy | |
| docs_check_enabled: false # nightly container has issues installing yq | |
| docs_check_container_image: swiftlang/swift:nightly-6.2-jammy |