diff --git a/.github/workflows/reusable-cpp-linter.yml b/.github/workflows/reusable-cpp-linter.yml index a7890f4..6f43396 100644 --- a/.github/workflows/reusable-cpp-linter.yml +++ b/.github/workflows/reusable-cpp-linter.yml @@ -46,6 +46,10 @@ on: description: "Packages to install in the Python virtual environment as a comma-separated list" default: "" type: string + cpp-linter-ignore-extra: + description: "Extra pipe-separated ignore globs for cpp-linter (e.g., 'plugin/**|subdir/third_party/**')" + default: "" + type: string jobs: lint: @@ -152,7 +156,11 @@ jobs: style: "" tidy-checks: "" version: ${{ inputs.clang-version }} - ignore: "build|!build/mlir/**|**/include|include" + ignore: ${{ format( + 'build|!build/mlir/**|**/include|include{0}{1}', + inputs.cpp-linter-ignore-extra != '' && '|' || '', + inputs.cpp-linter-ignore-extra + ) }} thread-comments: ${{ github.event_name == 'pull_request' && 'update' }} step-summary: true database: "build" diff --git a/CHANGELOG.md b/CHANGELOG.md index 33a910e..e5d0be9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,12 @@ This project adheres to [Semantic Versioning], with the exception that minor rel ## [1.17.3] - 2025-11-26 +_If you are upgrading: please see [`UPGRADING.md`](UPGRADING.md#1173)._ + +### Added + +- ✨ Add optional `cpp-linter-ignore-extra` input to allow ignoring additional files in C++ linter ([#241]) ([**@flowerthrower**]) + ### Fixed - 🐍🚨 Ensure a locked version of `ty` is used when enabled to guarantee stability ([#255]) ([**@burgholzer**]) @@ -192,6 +198,7 @@ _📚 Refer to the [GitHub Release Notes] for previous changelogs._ [#255]: https://github.com/munich-quantum-toolkit/workflows/pull/255 [#254]: https://github.com/munich-quantum-toolkit/workflows/pull/254 [#247]: https://github.com/munich-quantum-toolkit/workflows/pull/247 +[#241]: https://github.com/munich-quantum-toolkit/workflows/pull/241 [#206]: https://github.com/munich-quantum-toolkit/workflows/pull/206 [#188]: https://github.com/munich-quantum-toolkit/workflows/pull/188 [#184]: https://github.com/munich-quantum-toolkit/workflows/pull/184 @@ -215,6 +222,7 @@ _📚 Refer to the [GitHub Release Notes] for previous changelogs._ [**@burgholzer**]: https://github.com/burgholzer [**@ystade**]: https://github.com/ystade [**@denialhaag**]: https://github.com/denialhaag +[**@flowerthrower**]: https://github.com/flowerthrower diff --git a/UPGRADING.md b/UPGRADING.md index 01bd230..20f3ddf 100644 --- a/UPGRADING.md +++ b/UPGRADING.md @@ -6,11 +6,25 @@ This document describes breaking changes and how to upgrade. For a complete list ## [1.17.3] +### Type checking with `ty` + This release fixes the `ty` linter workflow, which would always use the latest version of `ty` available on PyPI. As `ty` is still moving pretty fast and the latest version may not be stable yet, this was not ideal. This release changes the behavior to use the version of `ty` listed as a development dependency in `pyproject.toml`. If you have the `enable-ty` option set to `true` in your workflow configuration, you **must** add `ty` to your development dependencies or the workflow will fail. +### Additional customization for the C++ linter + +This release adds the optional `cpp-linter-ignore-extra` input to the `reusable-cpp-linter.yml` workflow. +This allows ignoring additional files in the C++ linter workflow by passing a pipe-separated list of globs. +For example, to ignore all files in the `plugin` directory and the `subdir/third_party` directory, you can use the following configuration: + +```yaml +uses: munich-quantum-toolkit/workflows/.github/workflows/reusable-cpp-linter.yml@v1.17.3 +with: + cpp-linter-ignore-extra: "plugin/**|subdir/third_party/**" +``` + ## [1.17.0] This release removes all CodeQL workflows because CodeQL is now run automatically by GitHub. @@ -166,7 +180,8 @@ Consider removing any `-G Ninja` flags from your CMake invocations under Windows -[unreleased]: https://github.com/munich-quantum-toolkit/workflows/compare/v1.17.0...HEAD +[unreleased]: https://github.com/munich-quantum-toolkit/workflows/compare/v1.17.3...HEAD +[1.17.3]: https://github.com/munich-quantum-toolkit/workflows/compare/v1.17.0...v1.17.3 [1.17.0]: https://github.com/munich-quantum-toolkit/workflows/compare/v1.16.0...v1.17.0 [1.16.0]: https://github.com/munich-quantum-toolkit/workflows/compare/v1.15.0...v1.16.0 [1.15.0]: https://github.com/munich-quantum-toolkit/workflows/compare/v1.14.0...v1.15.0