* elixir: Don't use temp dir for mix linter
The mix linter sets `MIX_BUILD_PATH` to a temporary directory on every
run, which is very slow and inefficient. We can just use the default
build path to speed this up.
The default directory is `_build` inside the project, this is also
automatically added to `.gitignore` by `mix new` so hopefully shouldn't
cause any unwanted clutter.
The `%s` argument is removed since `mix compile` doesn't actually
support passing a filename.
The output stream is changed to `stderr` since that's where the errors
appear.
Other options:
- `mix compile` has a `--no-compile` flag, but this misses most errors
including basic syntax errors
- `mix format` has a `--dry-run` flag, but this only catches basic
syntax errors and misses other errors like undefined functions
Fixes https://github.com/dense-analysis/ale/issues/3816
* elixir: Fix error parsing for mix linter and support warnings
The error parsing stopped working at some point, probably when Elixir
introduced its new error formatting in for 1.16 in 2023.