Release highlights:
- Improve map exhaustiveness checking #524 by @xxdavid
- Fix all remaining self-check errors #521 by @erszcz
- Fix intersection-typed function calls with union-typed arguments #514 by @erszcz
- Experimental constraint solver #450 by @erszcz
Full list of merged PRs:
- Binary comprehension #201 by @NelsonVides
- Improve map exhaustiveness checking #524 by @xxdavid
- Log changes to variable types in #env.venv #541 by @erszcz
- Disallow timeouts in tests #535 by @xxdavid
- Add known problem: not checking for unreachable clauses with intersections #539 by @xxdavid
- Add
apps
option to rebar3 commands #538 by @gonzalobf - Add some Rebar3 plugin debug logging #532 by @erszcz
- Fix var binds in guard sequences #533 by @erszcz
- Document the compat_seen function #528 by @xxdavid
- fold guard chain #525 by @bartekgorny
- Fix all remaining self-check errors #521 by @erszcz
- New known problem: refine bound vars with guards #520 by @erszcz
- Fix handling of module_info for arities > 1 #500 by @xxdavid
- Don't discard annotation in instantiate/2 #517 by @erszcz
- Join var binds in add_type_pat_union/3 with least upper bound not greatest lower bound #512 by @erszcz
- Fix intersection-typed function calls with union-typed arguments #514 by @erszcz
- Print inferred argument types on call_intersect error #491 by @erszcz
- Fix exhaustiveness checking for union types #505 by @xxdavid
- Make the solver results deterministic #511 by @erszcz
- Type refinement of map keys and values #509 by @zuiderkwast
- Drop invalid lists:filtermap/2 known problem #506 by @erszcz
- Fix yet more self check errors #504 by @erszcz
- Constraint solver limitation known problem test and a workaround #503 by @erszcz
- Fix more self check errors #502 by @erszcz
- Experimental constraint solver #450 by @erszcz
- Require all functions in src/typechecker.erl to have specs #499 by @erszcz
- Fix specs introduced with Mod:module_info/1,2 support #498 by @erszcz
- Add support for module_info functions #496 by @xxdavid
- Add a Hex badge to README #495 by @erszcz