A type-checker for Erlang.
eqWAlizer is integrated and distributed with ELP (Erlang Language Platform).
- Use OTP 26 or higher.
- Install ELP.
- Add
eqwalizer_support
dependency to your rebar3 project definition (see below) - From the project directory run:
elp eqwalize <module>
to type-check a single moduleelp eqwalize-all
to type-check allsrc
modules in the project
Adding eqwalizer_support
:
{deps, [
{eqwalizer_support,
{git_subdir,
"https://github.com/whatsapp/eqwalizer.git",
{branch, "main"},
"eqwalizer_support"}}
]}.
- Use OTP 26 or higher.
- Install ELP.
- Write a
project.json
file describing your project. - From the project directory, assuming your
.json
file is calledproject.json
run:
elp eqwalize <module> --project project.json
to type-check a single moduleelp eqwalize-all --project project.json
to type-check allsrc
modules in the project
Please refer to the FAQ document for answers to some common questions, including:
- What's the difference between eqWAlizer and Dialyzer?
- Why not extend Dialyzer, rather than creating a new tool?
- What about Elixir?
Where can I learn more about eqWAlizer, its technical principles, its relation to dialyzer and elixir support feasibility?
here.
eqWAlizer is Apache licensed.