Skip to content

Add Xcode project for building as a framework #112

Add Xcode project for building as a framework

Add Xcode project for building as a framework #112

Workflow file for this run

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