Sub-HandlesVia-XS
=================
Created: 2026-01-26
Home page: <https://metacpan.org/release/Sub-HandlesVia-XS>
Bug tracker: <https://github.com/tobyink/p5-sub-handlesvia-xs/issues>
Maintainer: Toby Inkster (TOBYINK) <tobyink@cpan.org>
0.003003 2026-02-04
[ Bug Fixes ]
- Avoid redefining the newAV_mortal macro.
[ Packaging ]
- Remove superfluous files from packaging.
0.003002 2026-02-04
[ Bug Fixes ]
- Make all the C code C89-compliant.
0.003001 2026-02-03
[ Bug Fixes ]
- Fix issues with CvISXSUB not being defined on Perl older than 5.8.9.
- Fix segfaults sorting on Perl older than around 5.20.0.
- Fixes for sorting on non-glibc platforms.
[ Other ]
- Allow module to be built with MULTICALL disabled (perl Makefile.PL
CCFLAGS='-DDO_MULTICALL=0') mostly for testing.
- Gracefully handle exceptions thrown in a sorting callback.
0.003000 2026-02-01
- Added: Two new array methods: none and not_all_true.
- Use MULTICALL for most of the methods which run a callback on each array
element.
0.002000 2026-01-29
[ Bug Fixes ]
- Fix XS errors initializing mortal SVs before SAVETMPS which was leading
to crashes on large arrays.
- Fix qsort implementation on non-glibc platforms.
[ Other ]
- Added: A whole bunch of string methods.
- Efficiency and stability improvements for some of the array-looping
methods.
0.001004 2026-01-29
[ Packaging ]
- Fix packaging error.
0.001003 2026-01-29
- Improvements to the OUTBLESS return pattern.
0.001002 2026-01-28
[ Bug Fixes ]
- Fix for hard to trigger refcount issues with unshift and push methods.
0.001001 2026-01-28
[ Bug Fixes ]
- Fix for hard to trigger refcount issues with shift and pop methods.
- Fix segfaults in older versions of Perl caused by trying to POPs without
checking the function we called returned a value at all. Now always
check a value was returned first!
[ Other ]
- Added: Internal structures which have an 'element_type' now also can
have an 'element_type_tiny' which is a pointer back to the original
Type::Tiny type. If this is provided, then error handling should be even
better.
- Change missing parameter error messages to 'Wrong number of parameters'
for closer consistency with Type::Params.
- Check indices pa to get, set, and accessor methods are actually
integers.
- Check parameters passed to sort methods are actually coderefs.
- Check strings passed to join methods are actually strings.
- Defer to Type::Tiny's error handling when a type check fails, so that
error messages are at least approximately the same.
- Issue 'Wrong number of parameters' errors when too many parameters are
given.
- More consistency in whether the invocant is counted as a parameter (it
always is now) when reporting which parameter number had an issue.
- The push and unshift methods now return the new array length.
0.001000 2026-01-27 Initial release