From: Garrit Franke Date: Tue, 05 Apr 2022 11:45:02 GMT Subject: [PATCH v2 0/4] various: use iwyu (include-what-you-use) to analyze includes Message-ID: <20220405114505.24389-1-garrit@slashdev.space> In-Reply-To: <20220331194436.58005-1-garrit@slashdev.space> I'm sorry about the half-baked patch of mine. I initially noticed that the "hash-lookup.h" wasn't needed (which was a correct assumption), and then went overboard when trying to clean up the other includes. This is truly a rookie mistake that only wastes the time of everyone involved. This won't happen again! On 01.04.22 10:07, ��������� var Arnfj��������r�������� Bjarmason wrote: > ... For anyone interested in pursuing this, I think using the excellent > include-what-you-use tool would be a nice start. > > We could even eventually add it to our CI if the false positive rate > isn't bad (I haven't checked much): > https://github.com/include-what-you-use/include-what-you-use This seems to be a really nice tool indeed. I wouldn't be comfortable adding it to the CI just yet, but it did make it considerably easier to spot includes that could safely be removed. I think we could try battle-testing this tool in the codebase to get a sense of how it behaves. To start, I added your reference-command to a script under "contrib/iwyu" and ran it against the files you noted. Before breaking a bulk of the files, I wanted to make sure that this undertaking is headed in the right direction. Feedback is of course welcomed! Garrit Franke (4): contrib: add iwyu script bisect.c: remove unnecessary include serve.c: remove unnecessary include apply.c: remove unnecessary include bisect.c | 1 - builtin/apply.c | 1 - contrib/iwyu/README | 33 +++++++++++++++++++++++++++++++++ contrib/iwyu/iwyu.sh | 2 ++ serve.c | 1 - 5 files changed, 35 insertions(+), 3 deletions(-) create mode 100644 contrib/iwyu/README create mode 100755 contrib/iwyu/iwyu.sh -- 2.35.1