fix: Swift 6 Sendable errors on Xcode 16, unmask CI failures #3
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: Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*' | |
| jobs: | |
| release: | |
| # macos-15 default Xcode is 16+ — required for Swift 6 | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Show Xcode version | |
| run: xcodebuild -version | |
| - name: Run Tests | |
| run: | | |
| xcodebuild test \ | |
| -project ValetUI.xcodeproj \ | |
| -scheme ValetUI \ | |
| -destination 'platform=macOS' \ | |
| CODE_SIGNING_ALLOWED=NO \ | |
| -quiet | |
| # Ad-hoc signing: free, no Apple Developer account. Apple Silicon | |
| # refuses to launch fully unsigned binaries, so "-" identity is the | |
| # minimum. Users approve the app once via Gatekeeper on first launch. | |
| - name: Archive | |
| run: | | |
| xcodebuild archive \ | |
| -project ValetUI.xcodeproj \ | |
| -scheme ValetUI \ | |
| -configuration Release \ | |
| -archivePath ./build/ValetUI.xcarchive \ | |
| CODE_SIGN_IDENTITY="-" \ | |
| CODE_SIGNING_REQUIRED=YES \ | |
| CODE_SIGN_STYLE=Manual \ | |
| DEVELOPMENT_TEAM="" | |
| - name: Create DMG | |
| run: | | |
| APP="./build/ValetUI.xcarchive/Products/Applications/ValetUI.app" | |
| codesign --verify --verbose=2 "$APP" | |
| mkdir -p ./build/dmg | |
| cp -R "$APP" ./build/dmg/ | |
| ln -s /Applications ./build/dmg/Applications | |
| hdiutil create -volname "ValetUI" \ | |
| -srcfolder ./build/dmg \ | |
| -ov -format UDZO \ | |
| ./build/ValetUI-${{ github.ref_name }}.dmg | |
| - name: Upload Release Asset | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| files: ./build/ValetUI-${{ github.ref_name }}.dmg | |
| body: | | |
| ## Install | |
| 1. Download `ValetUI-${{ github.ref_name }}.dmg`, open it, drag **ValetUI** to **Applications** | |
| 2. First launch: macOS will warn that the app is from an unidentified developer (it is ad-hoc signed, not notarized — this is expected for a free open-source build) | |
| - **macOS 15 (Sequoia) and later:** open the app once, dismiss the warning, then go to **System Settings → Privacy & Security** and click **Open Anyway** | |
| - **macOS 14 and earlier:** right-click the app → **Open** → **Open** | |
| 3. Or skip the warning entirely from Terminal: | |
| ``` | |
| xattr -d com.apple.quarantine /Applications/ValetUI.app | |
| ``` | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |