Revision history for mb-JSON
0.05 2026-04-04 JST (Japan Standard Time)
- fix t/9050-pod.t: replace G11 implementation with Pod::Checker OO
interface (Pod::Checker->new / num_errors / num_warnings) and
split into G11 (errors) + G12 (warnings); plan updated from
11 to 12 tests per .pm file.
- fix t/9050-pod.t: skip G11 Pod::Checker errors check when
Pod::Checker < 1.51 to avoid false FAILs caused by mis-reported
errors for valid L</section>, L</"section">, and L<URL> syntax
on older Perl installations (CPAN Testers FAIL fix).
- fix t/9050-pod.t: skip G12 Pod::Checker warnings check when
Pod::Checker < 1.60 to avoid false FAILs caused by mis-reported
warnings for valid L<> link syntax on older Perl installations.
- fix t/9010-encoding.t, t/9020-perl5compat.t, t/9050-pod.t,
t/9060-readme.t, t/9070-examples.t, t/9080-cheatsheets.t:
warnings stub guard updated to !defined(&warnings::import) form
(consistent with mb 0.61, UTF8-R2 0.30, and other distributions).
0.04 2026-03-26 JST (Japan Standard Time)
New features:
- Added mb::JSON::encode(): Perl data structure -> JSON text.
Hash keys are sorted alphabetically for deterministic output.
UTF-8 multibyte strings are output as-is (not \uXXXX-escaped).
undef encodes as null.
- Added mb::JSON::Boolean type (mb::JSON::true / mb::JSON::false).
Plain 1/0 encode as JSON numbers; use mb::JSON::true/false for
JSON booleans.
- decode() now returns mb::JSON::Boolean objects for JSON true/false
(previously returned !!1 / !!0).
- Added mb::JSON::decode() as the canonical name; parse() retained
as a backward-compatible alias.
- Added eg/01_decode.pl, eg/02_encode.pl sample scripts.
- Added t/1001-decode.t, t/1002-encode.t, t/1003-boolean.t.
- Added t/9001-load.t through t/9080-cheatsheets.t: distribution
quality checks aligned with DB-Handy 1.07, HTTP-Handy 1.03,
and LTSV-LINQ 1.07 (INA_CPAN_Check-based test suite).
- Added doc/json_cheatsheet.*.txt: JSON quick reference in 21
languages.
- Fixed: warnings stub now guards with !defined(&warnings::import)
to suppress "import redefined" warnings.
0.03 2022-01-23 JST (Japan Standard Time)
- parse(): JSON null -> undef
- parse(): JSON true -> !!1
- parse(): JSON false -> !!0
- Supports UTF-8 multibyte strings
0.02 2022-01-01 JST (Japan Standard Time)
- Bug fixes in string parsing
0.01 2021-12-01 JST (Japan Standard Time)
- Initial release