In the latest update the extension now allows to run IWYU on all project files using command "Include What You Use (all targets)
". This is a slow operation as it goes over all files in the compile-commands.json
file one after the other. It only triggers on source files whose first directory (or the file itself if directly in the project workspace root) is not a symbolic link (which for instance excludes external
or bazel-out
). The settings iwyu.fix.ignore_re
and iwyu.fix.only_re
are respected upfront and prevent unnecessary triggering.
Also in version 0.0.6 logging changed to use the appropriate VSCode logger facilities. These are controlled by the workspace wide LogLevel rather then the now deleted iwyu.debug
setting. The LogLevel can be controlled with the Set Log Level command:
From the changelog:
[0.0.6]
Added new config settings:
iwyu.diagnostics.full_line_squiggles
: Whether to underline the whole line with squiggles or only the actual include part. The error is technically only on the actual include (from#
to eiter>
or second"
) but tools commonly underline the whole line and the fix script will also remove the whole line.- Use LogOutputChannel instead of OutputChannel for better log output control.
- Also remove setting
iwyu.debug
.
[0.0.7]
Add new command Include What You Use (all targets)
. See README.md for details.