- Export functions if used on the command line. - Run tests that require both encoder and decoder if there's a compatible encoder/decoder - not just if it's exactly the same. - Changelog and version bump to 0.09.
Checks the magic string and some basic header properties. No full validation of the packet.
This is very much a WIP, do not use for anything serious :)
Defaults to 1k - less data and we won't even try to compress.
two small typos
Loading DD on some versions of Perl seems to change the result of !0, which means we fail tests. This is probably a perl bug. Anyway, this changes the tests to make sure we load DD after we load the test set, so we get the right data structures in memory.
this macro is intimate to one routine only and exists only for refactoring, so move it local to where it is used, and undef it after the last use so it is clear it is not for general use (and next to where it is used).
Probably, including the right header would do the same thing...
We end up dieing because the SV we are dumping is a magic SV, which we have called mg_get() on, which has been legitimately set to undef. I am not sure if there is a better way to detect whether PVMGs have been handled ok. We could maybe rework this logic further, but it seems ok now.
This is still broken. Specifically "breaks" support for tied hashes (and possibly arrays and scalars). Not clear that supporting them was strictly correct before.
Basically, if we find unknown data structures (references, really), we have several options: die (default), emit undef, or stringify the data structure. If either of the latter two, we optionally emit a warning, too. Not being too strict with your input data makes a lot of sense if you're working on the system that is used to track problems. You never want that flat-out dying rather than just making do.