Skip to content

build: add opt-in IWYU support and clean up includes#63

Merged
fanyang89 merged 7 commits into
mainfrom
remove-dead-code
Apr 2, 2026
Merged

build: add opt-in IWYU support and clean up includes#63
fanyang89 merged 7 commits into
mainfrom
remove-dead-code

Conversation

@fanyang89
Copy link
Copy Markdown
Owner

  • add opt-in include-what-you-use support via CMake and Taskfile for local include hygiene checks
  • exclude generated Cap'n Proto code from IWYU and document the workflow in the README
  • fix include ownership issues across core, raftor, tests, and examples so both task iwyu and task test pass

Add a CMake-controlled IWYU path and a dedicated task so include
hygiene can be checked locally without affecting default builds.

Keep the workflow easy to rerun from a clean build tree.
@fanyang89 fanyang89 self-assigned this Apr 1, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request implements project-wide "Include What You Use" (IWYU) integration, including CMake support, Taskfile commands, and extensive header cleanup across the library, examples, and tests. It also introduces a mechanism to enable strict compiler warnings and refactors internal logic, such as improving index tracking in the read-only manager using std::optional. Feedback focuses on the migration of the clang-format Docker image to a personal repository, which poses a maintenance risk, and an unnecessary change to a loop counter in the inflights test that introduces signed/unsigned comparison issues.

Comment thread Taskfile.yml
Comment thread tests/inflights_test.cc Outdated
Comment thread scripts/clang-format.sh
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 1, 2026

Codecov Report

❌ Patch coverage is 94.59459% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 62.33%. Comparing base (8012291) to head (30bcaf3).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
include/raftpp/core/capnp_util.h 93.10% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #63   +/-   ##
=======================================
  Coverage   62.33%   62.33%           
=======================================
  Files          58       58           
  Lines        8491     8489    -2     
  Branches     1425     1425           
=======================================
- Hits         5293     5292    -1     
+ Misses       2588     2586    -2     
- Partials      610      611    +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@fanyang89 fanyang89 merged commit 594d3ea into main Apr 2, 2026
25 checks passed
@fanyang89 fanyang89 deleted the remove-dead-code branch April 2, 2026 02:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant