Skip to content

fix: Swift 6 Sendable errors on Xcode 16, unmask CI failures #3

fix: Swift 6 Sendable errors on Xcode 16, unmask CI failures

fix: Swift 6 Sendable errors on Xcode 16, unmask CI failures #3

Workflow file for this run

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 }}