# memorydetective leak detection on GitHub Actions. # # Runs `detectLeaksInXCTest` against a unit-test scheme on every push and PR, # uploads the HTML report as a workflow artifact, and fails the job when new # ROOT CYCLEs appear that are not in the `allowlistPatterns` list. # # Replace `DemoApp.xcworkspace`, `DemoAppTests`, and `DemoTests/LeakSensitiveCase` # with your own scheme + test identifier. Adjust the simulator runtime if # your project pins one (the macOS 26.x kernel regression makes iOS 18 the # most reliable runtime today; see the README "Heads up for macOS 26.x users" # section for context). name: leaks on: push: branches: [main] pull_request: branches: [main] jobs: detect-leaks: runs-on: macos-14 timeout-minutes: 30 steps: - uses: actions/checkout@v4 - name: Pin Xcode run: sudo xcode-select -s /Applications/Xcode_15.4.app - name: Install memorydetective run: npm install -g memorydetective - name: Boot simulator run: | xcrun simctl boot "iPhone 15" || true xcrun simctl bootstatus "iPhone 15" -b - name: Run leak-detection test pass run: | cat > leaks.json <