Changes for version 0.18
- BREAKING CHANGE: Encode UTF8-flagged hash keys as CBOR text.
- BUG FIX: Properly decoded hash keys that contain code points 128-255 were previously mangled. This release fixes that.
- BUG FIX: Decode CBOR text strings as UTF8-flaged Perl strings. This is an admittedly-imperfect attempt to preserve distinctly-typed text strings in Perl (a language that, by design, doesn’t distinguish text vs. binary). The POD has described this behavior for some time; it just was never implemented correctly until now.
- Add (EXPERIMENTAL) “text_keys” encode mode, which causes all CBOR map keys to be text. This requires proper character decoding!
- Add native_utf8() decode mode, which skips UTF-8 validation in decoding.
- Build fix: Require a reasonably recent ExtUtils::MakeMaker.
- CBOR::Free::AddOne in lib/CBOR/Free/AddOne.pm
- CBOR::Free::X in lib/CBOR/Free/X.pm
- CBOR::Free::X::Base in lib/CBOR/Free/X/Base.pm
- CBOR::Free::X::CannotDecode64Bit in lib/CBOR/Free/X/CannotDecode64Bit.pm
- CBOR::Free::X::Incomplete in lib/CBOR/Free/X/Incomplete.pm
- CBOR::Free::X::InvalidControl in lib/CBOR/Free/X/InvalidControl.pm
- CBOR::Free::X::InvalidMapKey in lib/CBOR/Free/X/InvalidMapKey.pm
- CBOR::Free::X::InvalidUTF8 in lib/CBOR/Free/X/InvalidUTF8.pm
- CBOR::Free::X::NegativeIntTooLow in lib/CBOR/Free/X/NegativeIntTooLow.pm
- CBOR::Free::X::Recursion in lib/CBOR/Free/X/Recursion.pm
- CBOR::Free::X::Unrecognized in lib/CBOR/Free/X/Unrecognized.pm