Fix winui pointer release capture 2076 #129
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: LiveCharts | |
| permissions: | |
| contents: read | |
| actions: read | |
| checks: write | |
| pull-requests: write | |
| on: | |
| pull_request: | |
| branches: [ master, dev ] | |
| jobs: | |
| report-progress-starting: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - uses: ./.github/actions/comment-progress | |
| id: create-comment | |
| with: | |
| content: | | |
| Thanks for your contribution! | |
| The build and test process is starting. This may take a while. | |
| You can find more details below as the process continues or at the [actions tab](https://github.com/Live-Charts/LiveCharts2/actions/runs/${{ github.run_id }}). | |
| outputs: | |
| comment_id: ${{ steps.create-comment.outputs.comment_id }} | |
| pack: | |
| runs-on: windows-2025 | |
| needs: report-progress-starting | |
| strategy: | |
| matrix: | |
| include: | |
| - short-name: core | |
| project: src/LiveChartsCore | |
| - short-name: skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharp | |
| - short-name: avalonia-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharp.Avalonia | |
| workloads: wasm-tools, maui | |
| - short-name: blazor-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharpView.Blazor | |
| - short-name: eto-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharpView.Eto | |
| - short-name: maui-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharpView.Maui | |
| workloads: maui | |
| - short-name: uno-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharpView.Uno.WinUI | |
| workloads: wasm-tools, maui | |
| - short-name: winui-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharpView.WinUI | |
| - short-name: winforms-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharp.WinForms | |
| - short-name: wpf-skiasharp | |
| project: src/skiasharp/LiveChartsCore.SkiaSharp.WPF | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Setup .NET and Workloads | |
| uses: ./.github/actions/setup-dotnet-and-workloads | |
| with: | |
| workloads: ${{ matrix.workloads }} | |
| - name: Pack | |
| run: | |
| dotnet pack ${{ matrix.project }} -c Release -o artifacts /p:IsPacking=true /p:LiveChartsVersionSuffix=-${{ github.sha }} | |
| - name: Upload packages | |
| id: upload | |
| uses: actions/[email protected] | |
| with: | |
| name: ${{ matrix.short-name }}-package | |
| retention-days: 30 | |
| path: | | |
| artifacts/*.nupkg | |
| artifacts/*.snupkg | |
| collect-packages: | |
| runs-on: ubuntu-24.04 | |
| needs: [pack, report-progress-starting] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Merge all package artifacts into one | |
| uses: actions/upload-artifact/merge@v6 | |
| id: merge | |
| with: | |
| name: nuget-packages | |
| pattern: "*-package" | |
| retention-days: 30 | |
| delete-merged: true | |
| - name: Update Comment | |
| uses: ./.github/actions/comment-progress | |
| with: | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| content: | | |
| --- | |
| All packages have been packed successfully! 📦✅ | |
| You can download the NuGet packages for this build [here](${{ steps.merge.outputs.artifact-url }}). | |
| The packages will be available for 30 days, you can either [use them directly](https://stackoverflow.com/questions/43400069/add-a-package-with-a-local-package-file-in-dotnet), or wait for this PR to be merged to have them published to NuGet.org. | |
| --- | |
| Tests will start now, you can monitor their progress below or at the [actions tab](https://github.com/Live-Charts/LiveCharts2/actions/runs/${{ github.run_id }}). | |
| test-core: | |
| runs-on: windows-2025 | |
| needs: [pack, report-progress-starting, collect-packages] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| framework: [ net8.0, net462 ] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Run tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: core | |
| test-id: core-${{ matrix.framework }} | |
| use-factos: false | |
| target-framework: ${{ matrix.framework }} | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| test-windows: | |
| runs-on: windows-2025 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - id: avalonia-desktop | |
| - id: eto | |
| - id: maui | |
| tf: net10.0-windows10.0.19041.0 | |
| workloads: maui | |
| - id: uno | |
| tf: net10.0-desktop | |
| workloads: maui | |
| - id: winui | |
| - id: winforms-net10 | |
| - id: winforms-net10w19041 | |
| - id: winforms-net462 | |
| - id: wpf-net10 | |
| - id: wpf-net10w19041 | |
| - id: wpf-net462 | |
| needs: [pack, report-progress-starting, collect-packages] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Run UI tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: windows | |
| use-factos: true | |
| test-id: ${{ matrix.id }} | |
| workloads: ${{ matrix.workloads }} | |
| target-framework: ${{ matrix.tf }} | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| test-linux: | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - id: avalonia-desktop | |
| # - id: eto, requires additional setup i think... | |
| - id: uno | |
| tf: net10.0-desktop | |
| workloads: android | |
| needs: [pack, report-progress-starting, collect-packages] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Setup headless display | |
| uses: pyvista/[email protected] | |
| - name: Run UI tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: linux | |
| use-factos: true | |
| test-id: ${{ matrix.id }} | |
| workloads: ${{ matrix.workloads }} | |
| target-framework: ${{ matrix.tf }} | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| test-mac: | |
| runs-on: macos-26 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - id: avalonia-desktop | |
| - id: eto | |
| - id: maui | |
| tf: net10.0-maccatalyst | |
| workloads: maui | |
| - id: uno | |
| tf: net10.0-desktop | |
| workloads: maui | |
| needs: [pack, report-progress-starting, collect-packages] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Run UI tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: mac | |
| use-factos: true | |
| test-id: ${{ matrix.id }} | |
| workloads: ${{ matrix.workloads }} | |
| target-framework: ${{ matrix.tf }} | |
| xcode-path: /Applications/Xcode_26.2.app | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| test-browser: | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| # not running, blazor issue? factos issue? tests issue? | |
| # - id: blazor | |
| # workloads: wasm-tools | |
| - id: avalonia-browser | |
| workloads: wasm-tools | |
| # not running, uno issue? factos issue? tests issue? | |
| # - id: uno | |
| # tf: net10.0-browserwasm | |
| # workloads: wasm-tools android | |
| needs: [pack, report-progress-starting, collect-packages] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Run UI tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: browser | |
| use-factos: true | |
| test-id: ${{ matrix.id }} | |
| workloads: ${{ matrix.workloads }} | |
| # target-framework: ${{ matrix.tf }} | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| test-android: | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - id: avalonia-android | |
| workloads: android | |
| - id: maui | |
| tf: net10.0-android | |
| workloads: maui-android | |
| # disabled for now, in this uno version, idk why on android no tests are detected. | |
| # - id: uno | |
| # tf: net10.0-android | |
| # workloads: android | |
| needs: [pack, report-progress-starting, collect-packages] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Run UI tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: android | |
| use-factos: true | |
| test-id: ${{ matrix.id }} | |
| workloads: ${{ matrix.workloads }} | |
| target-framework: ${{ matrix.tf }} | |
| use-android-emulator: true | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| test-ios: | |
| runs-on: macos-26 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| # - id: avalonia-ios | |
| # workloads: ios | |
| - id: maui | |
| tf: net10.0-ios | |
| workloads: maui | |
| # disabled for now, in this uno version, it takes 3 times longer than the others (about 40 mins) | |
| # - id: uno | |
| # tf: net10.0-ios | |
| # workloads: ios android | |
| needs: [pack, report-progress-starting, collect-packages] | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Run UI tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| id: ios | |
| use-factos: true | |
| test-id: ${{ matrix.id }} | |
| workloads: ${{ matrix.workloads }} | |
| target-framework: ${{ matrix.tf }} | |
| xcode-path: /Applications/Xcode_26.2.app | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| after-tests: | |
| runs-on: ubuntu-24.04 | |
| if: always() | |
| needs: | |
| - report-progress-starting | |
| - test-core | |
| - test-windows | |
| - test-linux | |
| - test-mac | |
| - test-browser | |
| - test-android | |
| - test-ios | |
| steps: | |
| - name: Checkout | |
| uses: actions/[email protected] | |
| - name: Download all test results | |
| uses: actions/[email protected] | |
| with: | |
| pattern: test-results-* | |
| path: ./test-results | |
| - name: Publish all test results | |
| id: report | |
| uses: dorny/[email protected] | |
| with: | |
| name: all-test-results | |
| path: "./test-results/**/*.trx" | |
| reporter: dotnet-trx | |
| - name: Report tests completion | |
| if: ${{ always() && !contains(join(needs.*.result, ' '), 'failure') && !contains(join(needs.*.result, ' '), 'cancelled') }} | |
| uses: ./.github/actions/comment-progress | |
| with: | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| content: | | |
| ### Test Results Summary (Passed) ✅ :partying_face: | |
| ${{ steps.report.outputs.skipped }} skipped. | |
| ${{ steps.report.outputs.failed }} failed. | |
| ${{ steps.report.outputs.passed }} passed! ✅ | |
| - name: Report tests failure | |
| if: ${{ always() && (contains(join(needs.*.result, ' '), 'failure') || contains(join(needs.*.result, ' '), 'cancelled')) }} | |
| uses: ./.github/actions/comment-progress | |
| with: | |
| comment_id: ${{ needs.report-progress-starting.outputs.comment_id }} | |
| content: | | |
| ### Test Results Summary (Failure) ❌ :disappointed_relieved: | |
| | Core | Windows | Linux | Mac | Browser | Android | iOS | | |
| |-------|---------|-------|-----|---------|---------|-----| | |
| | #${{ needs.test-core.result }} | #${{ needs.test-windows.result }} | #${{ needs.test-linux.result }} | #${{ needs.test-mac.result }} | #${{ needs.test-browser.result }} | #${{ needs.test-android.result }} | #${{ needs.test-ios.result }} | | |
| ${{ steps.report.outputs.skipped }} skipped. | |
| ${{ steps.report.outputs.passed }} passed. | |
| ${{ steps.report.outputs.failed }} failed. ❌ |