[clang-tidy] RFC: use module name as a directory for organizing files

clang-tidy has lots of associated files that are at least one file per check (tests may include multiple files).

In the source code, files are organized by subdirectories according to their module, e.g. all the modernize checks are under clang-tools-extra/clang-tidy/modernize.

This is not the case for our documentation and test files, however.

  • clang-tools-extra/docs/clang-tidy/checks has 450 files
  • clang-tools-extra/test/clang-tidy/checkers has 573 files
  • clang-tools-extra/test/clang-tidy/checkers/Inputs has a directory per-check that uses extra inputs, but so far this is only 26 subdirectories, so it doesn’t feel cumbersome yet

Before preparing a commit that organizes these files into subdirectories by module, I want to take the pulse of other clang-tidy devs and see if they are OK with it.

2 Likes

Looks reasonable to me!

I think there’s two ways to read this, and I’d like to be sure we’re all on the same page. Are you thinking:

clang-tools-extra/docs/clang-tidy/checks/bugprone/
clang-tools-extra/docs/clang-tidy/checks/cert/
(etc for all the modules)
clang-tools-extra/test/clang-tidy/checkers/bugprone/
clang-tools-extra/test/clang-tidy/checkers/cert/
(etc for all the modules)

Or were you thinking more along the lines of?

clang-tools-extra/clang-tidy/cert/docs/
clang-tools-extra/clang-tidy/cert/tests/
clang-tools-extra/clang-tidy/bugprone/docs/
clang-tools-extra/clang-tidy/bugprone/tests/
(etc for all the modules)

CC @alexfh for code owner awareness.

The former, I am proposing new subdirs in existing dirs and existing files moving to the new subdirs.