Revision history for PAGI-StructuredParameters

0.001001  2026-07-16
        - Tests: port t/*.t off `use v5.40` / signatures to plain 5.18-safe
          syntax (use strict/warnings + `my (...) = @_`). The library was
          already 5.18-clean, but the test files declared `use v5.40`, so
          cpanm's test phase failed to parse them on Perl < 5.40 -- breaking
          install on the declared 5.018 floor. No library changes.

0.001000  2026-07-15
        - Initial release.
        - No-dependency port of the core of
          Catalyst::Utils::StructuredParameters, decoupled from Catalyst.
        - PAGI::StructuredParameters engine: permitted() (lenient whitelist)
          and required() (strict, with a mandatory on-missing callback whose
          return value is thrown). Supports scalar keys, nested hashes, arrays,
          and arrays-of-hashes with full nesting; array-value flattening and
          empty-final-index reconstruction for form/query sources; in-place
          whitelisting for nested body data (JSON).
        - PAGI::StructuredParameters::Request: request-bound adapters
          (from_body/from_query/from_data) with asynchronous permitted/required.
        - Exception hierarchy: StructuredParameter base plus MissingParameter,
          InvalidArrayLength, and InvalidArrayPointer.
