Release 2.4.0
What's New
Changes
- Unified entropy approximations for
bits/2,total/2andrisk/2(removed small-total branch) - Simplified README Comparisons with added Benchee usage instructions
Added
- Benchee benchmark:
bench/compare.exs(Puid-only and full comparison modes) - GitHub Actions CI workflow: matrix build/test and dialyzer
Fixed
- Typespec consistency: non-bang functions now return
{:error, String.t()}; bang variants raisePuid.Error - Test bug fix: Fixed test bug in decode/encode roundtrip (use EDAscii correctly)
- Info spec:
info/0spec now returnsPuid.Info.t(); addedPuid.Info.ttype
Tooling Improvements
- Mix project: Renamed to
Puid.MixProject; addedstart_permanent, docs extras, dialyzer flags, preferred_cli_env, package files - Added Credo and
.credo.exs - Updated dependencies:
ex_doc ~> 0.38,dialyxir 1.4.6 - Removed
test/timing.exs; use Benchee for performance comparisons
Installation
Add to your mix.exs dependencies:
{:puid, "~> 2.4"}Full Changelog
See CHANGELOG.md for complete details.
Released: 2025-08-29