Runs soundcheck outside Credo, for what Credo cannot show: every location a finding involves (template, handler, JavaScript), line-level output for findings located only in JavaScript (such as unused hooks), and SARIF with related locations.
mix soundcheck
mix soundcheck --format sarif --output soundcheck.sarif
mix soundcheck --all --strictThe task compiles the project first, because semantic checks read compiled modules. It exits with status 1 when it reports any finding that is not unverifiable.
Options
--format-text(default),json, orsarif--output- write to this file instead of standard output--all- run every check, not only the default ones--only- comma-separated check ids to run, such asSC101,SC1002--strict- also report unverifiable findings--path- a glob of Elixir sources, repeatable (defaultlib/**/*.ex)--js-path- a JavaScript directory, repeatable (defaultassets/js)--no-compile- do not compile; load the existing build as it is--config-file- the Credo config to read (default.credo.exs)--config-name- the config within it (defaultdefault)--baseline- a baseline file whose findings are not reported (default.soundcheck_baseline.exswhen it exists)--no-baseline- report every finding--write-baseline- record the current findings in the baseline file and exit 0. Entries of checks that did not run, and with--path, of files outside its globs, stay in the file.
Checks run with the parameters .credo.exs sets for them, as in
mix credo, and the checks that file enables or disables are added to or
removed from the defaults. --only and --all select checks regardless
of the file. The Soundcheck plugin's js_paths param applies unless
--js-path is given.