New
v0.6.0
New features
Multiple behaviour support in Hammox.Protect and Hammox.protect/2 [#93]
use Hammox.Protect now accepts multiple :behaviour options:
use Hammox.Protect, module: My.Module, behaviour: My.Module.Contract, behaviour: My.Module.OtherContract
Which is functionally equivalent to:
use Hammox.Protect, module: My.Module, behaviour: My.Module.Contract
use Hammox.Protect, module: My.Module, behaviour: My.Module.OtherContract
Likewise, Hammox.protect/2 now additionally supports a list of behaviours as second argument:
Hammox.protect(My.Module, [My.Module.Contract, My.Module.OtherContract]),
Big thanks to @camilleryr for submitting these changes.
Bug fixes
- Complex multiline typespecs no longer cause a CaseClauseError with recent versions of Elixir when Hammox tries to print them [#113]
- The
bool()type is now correctly supported and no longer causes an exception [#115] - Type guards are now correctly supported and no longer cause an exception [#116]
- Fixes incorrect usage of
Code.ensure_compiled/1[#111] (thanks to @Adzz)
Other
- Tweaks to documentation [#84][#87] (thanks to @kianmeng and @wojtekmach)