From 4f2f4ac845605280c447d1580a3697278ac2bc38 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Fri, 30 Jan 2026 17:54:35 +0100 Subject: [PATCH 1/9] add: codeql version specification and vs code plugins --- .../.devcontainer/devcontainer.json | 7 ++++++- .../.devcontainer/s-core-local/versions.yaml | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/s-core-devcontainer/.devcontainer/devcontainer.json b/src/s-core-devcontainer/.devcontainer/devcontainer.json index 2625a78..c2b207f 100644 --- a/src/s-core-devcontainer/.devcontainer/devcontainer.json +++ b/src/s-core-devcontainer/.devcontainer/devcontainer.json @@ -67,7 +67,8 @@ "swyddfa.esbonio", // for Sphinx documentation support "rust-lang.rust-analyzer", // Rust language support for Visual Studio Code; see also tasks below "github.vscode-pull-request-github", // GitHub integration - "bierner.markdown-preview-github-styles" // GitHub style for Markdown preview + "bierner.markdown-preview-github-styles", // GitHub style for Markdown preview + "ms-sarifvscode.sarif-viewer" // CodeQL report viewer ], "settings": { "files.insertFinalNewline": true, @@ -88,6 +89,10 @@ "--experimental_use_code_flow_analysis", "--experimental_enable_label_completions" ], + // we are NOT installing the codeql extension, because this is only needed for codeql rule development, + // but just in case someone wants to use it, we preconfigure it here + "codeQL.runningQueries.numberOfThreads": 0, // use all available threads, I can't believe this is not the default + "codeQl.cli.executablePath": "$CODEQL_HOME/codeql/bin/codeql", "C_Cpp.intelliSenseEngine": "disabled", // This only supports basic tests: https://github.com/matepek/vscode-catch2-test-adapter/issues/429 // More complex tests may need execution via bazel, which is not done yet. diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml b/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml index bd93590..38454d1 100644 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml @@ -83,3 +83,18 @@ bazel_compile_commands: # The following sha256sums are for the deb package bazel-compile-commands_-noble_arm64.deb # It is generated by running 'sha256sum bazel-compile-commands_-noble_arm64.deb' sha256: d73998efa01cbd501b82ad6266642464b78ecd9fc6224a60c9cb558182d52d88 + +codeql: + # the coding_standards_version dictates the codeql version + version: 2.21.4 + amd64: + # The following sha256sum is for the codeql-linux64.zip + # from the GitHub release page of codeql + # It is generated by running 'sha256sum codeql-linux64.zip' + sha256: 4a33248583db06a3e163a45fad4ca811abb6217cf517da66c2c85db8a81c70b4 + # arm64 architecture is not officially supported by CodeQL as of now + +codeql_coding_standards: + version: 2.54.0 + amd64: + sha256:d3219359054e766da869da27881b2e514d786baeae591910741300e9c988c5c3 From da2ade28f26c3f887be8c515c178b411bbe3e9e0 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Tue, 3 Feb 2026 15:46:16 +0000 Subject: [PATCH 2/9] install codeql and preload coding guideline packs --- .../.devcontainer/s-core-local/install.sh | 24 +++++++++++++++++++ .../.devcontainer/s-core-local/versions.yaml | 16 ++++++------- src/s-core-devcontainer/test-project/test.sh | 1 + 3 files changed, 32 insertions(+), 9 deletions(-) diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh index d1d17ca..189bb30 100755 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh @@ -126,6 +126,30 @@ apt-get install -y gdb="${gdb_version}*" apt-get install -y valgrind=1:${valgrind_version}* +# CodeQL +apt-get install -y zstd +if [ "${ARCHITECTURE}" = "amd64" ]; then + VARIANT=linux64 + SHA256SUM="${codeql_amd64_sha256}" +elif [ "${ARCHITECTURE}" = "arm64" ]; then + VARIANT=osx + SHA256SUM="${codeql_arm64_sha256}" +else + echo "Unsupported architecture: ${ARCHITECTURE} for CodeQL" + exit 1 +fi +curl -L "https://github.com/github/codeql-action/releases/download/codeql-bundle-v${codeql_version}/codeql-bundle-${VARIANT}.tar.zst" -o /tmp/codeql.tar.zst +echo "${SHA256SUM} /tmp/codeql.tar.zst" | sha256sum -c - || exit 1 +tar -I zstd -xf /tmp/codeql.tar.zst -C /usr/local +ln -s /usr/local/codeql/codeql /usr/local/bin/codeql +rm /tmp/codeql.tar.zst +echo "export CODEQL_HOME=/usr/local/codeql" > /etc/profile.d/codeql.sh + +codeql pack download codeql/misra-cpp-coding-standards@${codeql_coding_standards_version} +codeql pack download codeql/misra-c-coding-standards@${codeql_coding_standards_version} +codeql pack download codeql/cert-cpp-coding-standards@${codeql_coding_standards_version} +codeql pack download codeql/cert-c-coding-standards@${codeql_coding_standards_version} + # Bash completion for rust tooling rustup completions bash rustup >> /etc/bash_completion.d/rustup.bash rustup completions bash cargo >> /etc/bash_completion.d/cargo.bash diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml b/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml index 38454d1..390a614 100644 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml @@ -26,7 +26,7 @@ gh: version: "2.45.0" openjdk_21: - version: "21.0.9" + version: "21.0.10" valgrind: version: "3.22.0" @@ -85,16 +85,14 @@ bazel_compile_commands: sha256: d73998efa01cbd501b82ad6266642464b78ecd9fc6224a60c9cb558182d52d88 codeql: - # the coding_standards_version dictates the codeql version + # the coding_standards_version below dictates the codeql version version: 2.21.4 amd64: - # The following sha256sum is for the codeql-linux64.zip - # from the GitHub release page of codeql - # It is generated by running 'sha256sum codeql-linux64.zip' - sha256: 4a33248583db06a3e163a45fad4ca811abb6217cf517da66c2c85db8a81c70b4 - # arm64 architecture is not officially supported by CodeQL as of now + # see https://github.com/github/codeql-action/releases/download/codeql-bundle-v${codeql_version}/codeql-bundle-linux64.tar.zst.checksum.txt + sha256: 6da9f3df228d4e162af877569240a627c1af22f6adbd26352b22357fb8bd7545 + arm64: + # see https://github.com/github/codeql-action/releases/download/codeql-bundle-v${codeql_version}/codeql-bundle-osx64.tar.zst.checksum.txt + sha256: 810a1fff48aeb081be754e46e255edd90d8695966e78431a65edb00e9e6cc399 codeql_coding_standards: version: 2.54.0 - amd64: - sha256:d3219359054e766da869da27881b2e514d786baeae591910741300e9c988c5c3 diff --git a/src/s-core-devcontainer/test-project/test.sh b/src/s-core-devcontainer/test-project/test.sh index be6e55f..c1c3280 100755 --- a/src/s-core-devcontainer/test-project/test.sh +++ b/src/s-core-devcontainer/test-project/test.sh @@ -11,6 +11,7 @@ check "validate clangd is working and has the correct version" bash -c "clangd - check "validate clang-format is working and has the correct version" bash -c "clang-format --version | grep '20.1.8'" check "validate clang-tidy is working and has the correct version" bash -c "clang-tidy --version | grep '20.1.8'" check "validate clang is working and has the correct version" bash -c "clang --version | grep '20.1.8'" +check "validate codeql is working and has the correct version" bash -c "codeql --version | grep '2.21.4'" # Rust tooling check "validate rustc is working and has the correct version" bash -c "rustc --version | grep '1.83.0'" From 4326bb1eaa6f3015c73993100c811b941e6a40ad Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Wed, 4 Feb 2026 15:48:43 +0100 Subject: [PATCH 3/9] Apply suggestions from code review Signed-off-by: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> --- src/s-core-devcontainer/.devcontainer/s-core-local/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh index 189bb30..4221b86 100755 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh @@ -156,7 +156,7 @@ rustup completions bash cargo >> /etc/bash_completion.d/cargo.bash # Cleanup # REMOVE CONTAINER BUILD DEPENDENCIES -apt-get remove --purge -y apt-transport-https +apt-get remove --purge -y apt-transport-https zstd apt-get autoremove -y apt-get clean rm -rf /var/lib/apt/lists/* From ed78e4b664ee2bb55ede588d0097538b784d3aed Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Wed, 4 Feb 2026 14:59:21 +0000 Subject: [PATCH 4/9] fix: move codeql version check to s-core-local test script --- .../.devcontainer/s-core-local/tests/test_default.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh b/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh index e610554..904b7ec 100755 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh @@ -51,6 +51,7 @@ check "validate JAVA_HOME is set correctly" bash -c 'echo $JAVA_HOME | xargs rea check "validate gdb is working and has the correct version" bash -c "gdb --version | grep '${gdb_version}'" check "validate gh is working and has the correct version" bash -c "gh --version | grep '${gh_version}'" check "validate valgrind is working and has the correct version" bash -c "valgrind --version | grep '${valgrind_version}'" +check "validate codeql is working and has the correct version" bash -c "codeql --version | grep '${codeql_version}'" # Qemu target-related tools check "validate qemu-system-aarch64 is working and has the correct version" bash -c "qemu-system-aarch64 --version | grep '${qemu_system_arm_version}'" From 46bcaea8a98123ea15d22f5badfaa5aee691ba12 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Thu, 5 Feb 2026 09:14:15 +0000 Subject: [PATCH 5/9] skip installation of codeql for ubuntu arm64 --- .../.devcontainer/s-core-local/install.sh | 35 ++++++++++++------- .../s-core-local/tests/test_default.sh | 7 +++- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh index 4221b86..432776d 100755 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh @@ -16,6 +16,7 @@ DEBIAN_FRONTEND=noninteractive . /devcontainer/features/s-core-local/versions.sh ARCHITECTURE=$(dpkg --print-architecture) +KERNEL=$(uname -s) apt-get update @@ -132,23 +133,31 @@ if [ "${ARCHITECTURE}" = "amd64" ]; then VARIANT=linux64 SHA256SUM="${codeql_amd64_sha256}" elif [ "${ARCHITECTURE}" = "arm64" ]; then - VARIANT=osx - SHA256SUM="${codeql_arm64_sha256}" + if [ "${KERNEL}" = "Darwin" ]; then + VARIANT=osx64 + SHA256SUM="${codeql_arm64_sha256}" + else + echo "CodeQl unsupported architecture/os: ${ARCHITECTURE} on ${KERNEL}, skipping installation" + VARIANT=noinstall + fi else echo "Unsupported architecture: ${ARCHITECTURE} for CodeQL" exit 1 fi -curl -L "https://github.com/github/codeql-action/releases/download/codeql-bundle-v${codeql_version}/codeql-bundle-${VARIANT}.tar.zst" -o /tmp/codeql.tar.zst -echo "${SHA256SUM} /tmp/codeql.tar.zst" | sha256sum -c - || exit 1 -tar -I zstd -xf /tmp/codeql.tar.zst -C /usr/local -ln -s /usr/local/codeql/codeql /usr/local/bin/codeql -rm /tmp/codeql.tar.zst -echo "export CODEQL_HOME=/usr/local/codeql" > /etc/profile.d/codeql.sh - -codeql pack download codeql/misra-cpp-coding-standards@${codeql_coding_standards_version} -codeql pack download codeql/misra-c-coding-standards@${codeql_coding_standards_version} -codeql pack download codeql/cert-cpp-coding-standards@${codeql_coding_standards_version} -codeql pack download codeql/cert-c-coding-standards@${codeql_coding_standards_version} + +if [ "${VARIANT}" != "noinstall" ]; then + curl -L "https://github.com/github/codeql-action/releases/download/codeql-bundle-v${codeql_version}/codeql-bundle-${VARIANT}.tar.zst" -o /tmp/codeql.tar.zst + echo "${SHA256SUM} /tmp/codeql.tar.zst" | sha256sum -c - || exit 1 + tar -I zstd -xf /tmp/codeql.tar.zst -C /usr/local + ln -s /usr/local/codeql/codeql /usr/local/bin/codeql + rm /tmp/codeql.tar.zst + echo "export CODEQL_HOME=/usr/local/codeql" > /etc/profile.d/codeql.sh + + codeql pack download codeql/misra-cpp-coding-standards@${codeql_coding_standards_version} + codeql pack download codeql/misra-c-coding-standards@${codeql_coding_standards_version} + codeql pack download codeql/cert-cpp-coding-standards@${codeql_coding_standards_version} + codeql pack download codeql/cert-c-coding-standards@${codeql_coding_standards_version} +fi # Bash completion for rust tooling rustup completions bash rustup >> /etc/bash_completion.d/rustup.bash diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh b/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh index 904b7ec..4361a47 100755 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/tests/test_default.sh @@ -1,6 +1,9 @@ #!/usr/bin/env bash set -euo pipefail +ARCHITECTURE=$(dpkg --print-architecture) +KERNEL=$(uname -s) + # Read tool versions + metadata into environment variables . /devcontainer/features/s-core-local/versions.sh @@ -51,7 +54,9 @@ check "validate JAVA_HOME is set correctly" bash -c 'echo $JAVA_HOME | xargs rea check "validate gdb is working and has the correct version" bash -c "gdb --version | grep '${gdb_version}'" check "validate gh is working and has the correct version" bash -c "gh --version | grep '${gh_version}'" check "validate valgrind is working and has the correct version" bash -c "valgrind --version | grep '${valgrind_version}'" -check "validate codeql is working and has the correct version" bash -c "codeql --version | grep '${codeql_version}'" +if [ "${ARCHITECTURE}" = "amd64" ] || { [ "${ARCHITECTURE}" = "arm64" ] && [ "${KERNEL}" = "Darwin" ]; }; then + check "validate codeql is working and has the correct version" bash -c "codeql --version | grep '${codeql_version}'" +fi # Qemu target-related tools check "validate qemu-system-aarch64 is working and has the correct version" bash -c "qemu-system-aarch64 --version | grep '${qemu_system_arm_version}'" From 4bbe932c0a8262970b5042c25560dd106942fd23 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Thu, 5 Feb 2026 13:41:43 +0000 Subject: [PATCH 6/9] codeql packs must be installed in "qlpack" directory, otherwise they cannot be resolved --- .../.devcontainer/s-core-local/install.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh index 432776d..c228855 100755 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/install.sh @@ -153,10 +153,10 @@ if [ "${VARIANT}" != "noinstall" ]; then rm /tmp/codeql.tar.zst echo "export CODEQL_HOME=/usr/local/codeql" > /etc/profile.d/codeql.sh - codeql pack download codeql/misra-cpp-coding-standards@${codeql_coding_standards_version} - codeql pack download codeql/misra-c-coding-standards@${codeql_coding_standards_version} - codeql pack download codeql/cert-cpp-coding-standards@${codeql_coding_standards_version} - codeql pack download codeql/cert-c-coding-standards@${codeql_coding_standards_version} + codeql pack download codeql/misra-cpp-coding-standards@${codeql_coding_standards_version} -d /usr/local/codeql/qlpacks/ + codeql pack download codeql/misra-c-coding-standards@${codeql_coding_standards_version} -d /usr/local/codeql/qlpacks/ + codeql pack download codeql/cert-cpp-coding-standards@${codeql_coding_standards_version} -d /usr/local/codeql/qlpacks/ + codeql pack download codeql/cert-c-coding-standards@${codeql_coding_standards_version} -d /usr/local/codeql/qlpacks/ fi # Bash completion for rust tooling From 660a4d9811cf640486f6cef42727a6ec33db4a06 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Thu, 5 Feb 2026 15:54:22 +0100 Subject: [PATCH 7/9] Update src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml okay Co-authored-by: lurtz <727209+lurtz@users.noreply.github.com> Signed-off-by: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> --- .../.devcontainer/s-core-local/versions.yaml | 35 ------------------- 1 file changed, 35 deletions(-) diff --git a/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml b/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml index e19c627..5d42f6d 100644 --- a/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml +++ b/src/s-core-devcontainer/.devcontainer/s-core-local/versions.yaml @@ -32,41 +32,6 @@ openjdk_21: shellcheck: version: 0.9.0 -bazelisk: - version: 1.27.0 - amd64: - # The following sha256sums are for the deb package bazelisk__amd64.deb - # It is generated by running 'sha256sum bazelisk__amd64.deb' - sha256: d8b00ea975c823e15263c80200ac42979e17368547fbff4ab177af035badfa83 - arm64: - # The following sha256sums are for the deb package bazelisk__arm64.deb - # It is generated by running 'sha256sum bazelisk__arm64.deb' - sha256: 173c5b367b485a30ce58c1d0d560b39d257a2d7a3c859c45d7d05eb61605a2a1 - -starpls: - version: 0.1.22 - amd64: - # The following sha256sum is for the binary starpls-linux-amd64 - # from the GitHub release page of starpls - # It is generated by running 'sha256sum starpls-linux-amd64' - sha256: 7c661cdde0d1c026665086d07523d825671e29056276681616bb32d0273c5eab - arm64: - # The following sha256sum is for the binary starpls-linux-arm64 - # from the GitHub release page of starpls - # It is generated by running 'sha256sum starpls-linux-arm64' - sha256: 55877ec4c3ff03e1d90d59c76f69a3a144b6c29688747c8ac4d77993e2eef1ad - -bazel_compile_commands: - version: 0.18.0 - amd64: - # The following sha256sums are for the deb package bazel-compile-commands_-noble_amd64.deb - # It is generated by running 'sha256sum bazel-compile-commands_-noble_amd64.deb' - sha256: 6735ea846241497094719792ad3d4f67b1d3123048693d34fcdf7190f8c2da4e - arm64: - # The following sha256sums are for the deb package bazel-compile-commands_-noble_arm64.deb - # It is generated by running 'sha256sum bazel-compile-commands_-noble_arm64.deb' - sha256: d73998efa01cbd501b82ad6266642464b78ecd9fc6224a60c9cb558182d52d88 - codeql: # the coding_standards_version below dictates the codeql version version: 2.21.4 From 77b4b794907c025b08bf3baaf580c0b677d12006 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Thu, 5 Feb 2026 15:57:32 +0100 Subject: [PATCH 8/9] Apply suggestion from @clemens-k move codeql test to s-core-local tests Signed-off-by: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> --- src/s-core-devcontainer/test-project/test.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/src/s-core-devcontainer/test-project/test.sh b/src/s-core-devcontainer/test-project/test.sh index 02d2ed6..d568719 100755 --- a/src/s-core-devcontainer/test-project/test.sh +++ b/src/s-core-devcontainer/test-project/test.sh @@ -8,7 +8,6 @@ check "validate clangd is working and has the correct version" bash -c "clangd - check "validate clang-format is working and has the correct version" bash -c "clang-format --version | grep '20.1.8'" check "validate clang-tidy is working and has the correct version" bash -c "clang-tidy --version | grep '20.1.8'" check "validate clang is working and has the correct version" bash -c "clang --version | grep '20.1.8'" -check "validate codeql is working and has the correct version" bash -c "codeql --version | grep '2.21.4'" # Rust tooling check "validate rustc is working and has the correct version" bash -c "rustc --version | grep '1.83.0'" From d01b34f71ae994738505e7dc394faa016beb25c2 Mon Sep 17 00:00:00 2001 From: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> Date: Thu, 5 Feb 2026 16:10:32 +0100 Subject: [PATCH 9/9] Apply suggestion from @clemens-k fixed incorrect path Signed-off-by: Clemens Kutz <53788793+clemens-k@users.noreply.github.com> --- src/s-core-devcontainer/.devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/s-core-devcontainer/.devcontainer/devcontainer.json b/src/s-core-devcontainer/.devcontainer/devcontainer.json index 64e606f..93380d1 100644 --- a/src/s-core-devcontainer/.devcontainer/devcontainer.json +++ b/src/s-core-devcontainer/.devcontainer/devcontainer.json @@ -94,7 +94,7 @@ // we are NOT installing the codeql extension, because this is only needed for codeql rule development, // but just in case someone wants to use it, we preconfigure it here "codeQL.runningQueries.numberOfThreads": 0, // use all available threads, I can't believe this is not the default - "codeQl.cli.executablePath": "$CODEQL_HOME/codeql/bin/codeql", + "codeQl.cli.executablePath": "$CODEQL_HOME/codeql", "C_Cpp.intelliSenseEngine": "disabled", // This only supports basic tests: https://github.com/matepek/vscode-catch2-test-adapter/issues/429 // More complex tests may need execution via bazel, which is not done yet.