From 89a46b603b4dd2f46531cef21830264ef68c4028 Mon Sep 17 00:00:00 2001 From: Sergio Martins Date: Wed, 4 Feb 2026 22:04:29 +0000 Subject: [PATCH 1/3] ci: Also build against an ASAN Qt We now have Qt 6.11 builds built against ASAN/LSAN. --- .github/workflows/build-sanitizers.yml | 48 ++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/build-sanitizers.yml diff --git a/.github/workflows/build-sanitizers.yml b/.github/workflows/build-sanitizers.yml new file mode 100644 index 00000000..c1e7110a --- /dev/null +++ b/.github/workflows/build-sanitizers.yml @@ -0,0 +1,48 @@ +# SPDX-FileCopyrightText: 2026 Klarälvdalens Datakonsult AB, a KDAB Group company +# +# SPDX-License-Identifier: MIT + +name: CI (Sanitizers) + +on: + push: + branches: + - master + pull_request: + branches: + - master + workflow_dispatch: + +jobs: + build: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: true + matrix: + os: + - ubuntu-24.04 + preset: ['dev-asan'] + include: + - preset: dev-asan + qt-flavor: asan + steps: + - name: Checkout sources + uses: actions/checkout@v4 + + - name: Setup Sanitized Qt + uses: KDABLabs/sanitized-qt-action@v1 + with: + qt-tag: "v6.11.0-beta2" + qt-flavor: ${{ matrix.qt-flavor }} + + - name: Configure + run: cmake --preset=${{ matrix.preset }} -DKDChart_STATIC=ON + + - name: Build + run: cmake --build ./build/${{ matrix.preset }} + + - name: Run tests + run: | + ctest --test-dir ./build/${{ matrix.preset }} --output-on-failure --verbose + env: + LSAN_OPTIONS: "detect_leaks=0" # patches accepted From 04baaa3743f50b696c0fcea6b7152ba1d7e3eac6 Mon Sep 17 00:00:00 2001 From: Sergio Martins Date: Wed, 4 Feb 2026 22:59:35 +0000 Subject: [PATCH 2/3] .gitignore: Ignore clangd cache dir and compile_commands.json --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index ff44babb..21e6eb97 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,5 @@ kdchart/tests/Gantt/unittest/unittest kdchart/tests/Gantt/unittest/TestUnittests Makefile* +compile_commands.json +.cache From c473c71724741ef4f3d714920082c614f42e0b01 Mon Sep 17 00:00:00 2001 From: Sergio Martins Date: Wed, 4 Feb 2026 23:18:29 +0000 Subject: [PATCH 3/3] fixup! ci: Also build against an ASAN Qt --- .github/workflows/build-sanitizers.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build-sanitizers.yml b/.github/workflows/build-sanitizers.yml index c1e7110a..6668b06f 100644 --- a/.github/workflows/build-sanitizers.yml +++ b/.github/workflows/build-sanitizers.yml @@ -46,3 +46,4 @@ jobs: ctest --test-dir ./build/${{ matrix.preset }} --output-on-failure --verbose env: LSAN_OPTIONS: "detect_leaks=0" # patches accepted + QT_QPA_PLATFORM: "offscreen"