Changes for version 0.15 - 2026-06-30
- Bug fixes
- Ensure Makefile.PL has the latest META_MERGE format
- Replace Devel::Confess::longmess (internal API) with Carp::confess
- Remove Devel::Confess dependency: it installed process-wide %SIG handlers as a library side-effect and read taintable env vars under -T
- Fix caller variable mutation: REF-unwrap now works on a copy, not the @_ alias, so the caller's variable is never silently modified
- Fix array-slice syntax @{$_[0]}[0] -> $_[0]->[0]
- New features
- $default may now be an arrayref of positional key names: get_params([qw(name age)], 'Alice', 30) -> { name => 'Alice', age => 30 }
- Tests
- Add t/locales.t: verify error messages are locale-independent
- Add arrayref-default coverage to t/get_params.t
- Code quality
- Modernise Exporter: use parent 'Exporter' replaces @ISA manipulation
- Add Readonly sentinels for ref-type strings
- Remove dead commented-out code and FIXME blocks
- Expand POD: LIMITATIONS, MESSAGES table, FORMAL SPECIFICATION, PSEUDOCODE
Documentation
Modules
Normalise subroutine arguments regardless of calling convention