Performance: reduce memory footprint and idle energy use #42
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: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| lint: | |
| name: Lint | |
| runs-on: macos-14 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Xcode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Install SwiftLint | |
| run: brew install swiftlint | |
| - name: Run SwiftLint | |
| run: swiftlint lint AudioType | |
| build: | |
| name: Build | |
| runs-on: macos-14 | |
| needs: lint | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Xcode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Build AudioType (Debug) | |
| run: swift build | |
| - name: Build AudioType (Release) | |
| run: swift build -c release | |
| - name: Create app bundle | |
| run: make app | |
| - name: Verify app bundle | |
| run: | | |
| # Check that all required files exist | |
| test -f AudioType.app/Contents/MacOS/AudioType | |
| test -f AudioType.app/Contents/Info.plist | |
| # Verify code signature | |
| codesign -v AudioType.app | |
| echo "App bundle verification passed!" | |
| test: | |
| name: Test | |
| runs-on: macos-14 | |
| needs: build | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Xcode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Run tests | |
| run: swift test | |
| continue-on-error: true # Tests may not exist yet |