Revision history for Perl extension GraphQL-Houtou
0.05 2026-07-26T22:07:03Z
- Fix boolean literal crash under JSON::MaybeXS 1.003009 / JSON::PP fallback (#110)
0.04 2026-07-26T09:01:54Z
- Extend fast root continuation to single root object/abstract fields (#103)
- Drive on_stall from C, skip the response Promise::XS entirely (#104)
- Fix DataLoader Ticket cancellation leak, drive fallback on_stall from C too (#105)
- Pool LazyInfo ($info) structs to cut per-call allocator churn (#106)
- Extend Phase 7's raw frame linkage to suspending list items (#107)
- Fix two UTF8 flag loss bugs found while adding multibyte robustness tests (#108)
- Add regression tests for unverified multibyte/persistence paths (#109)
0.03_01 2026-07-25T10:45:54Z
- Apply argument defaults when referenced variables are omitted.
- Reject unknown resolver modes during schema compilation.
- Preserve DataLoader ticket all/race Promise compatibility.
- Speed up variable preparation and direct variable argument lookup.
- Add fast resolver ABIs for zero-, one-, and multiple-argument fields.
- Add explicit fast_resolve modes for reduced resolver callback signatures.
- Add zero-argument object accessors that bypass the generic resolver adapter.
- Cache accessor method lookup with subclass and redefinition invalidation.
0.03 2026-07-22T10:49:34Z
- Preflight oversized parser inputs and add heaptrack gate (#86)
- Acknowledge graphql-perl influence (#87)
- Fix quadmath JSON float formatting (#88)
0.02 2026-07-21T10:19:16Z
- Fix vm runtime context passing (#83)
- Handle token limit errors without full source copy (#84)
0.01 2026-07-19T04:40:06Z
- Added an XS-backed GraphQL parser, schema compiler, validation engine,
and query/mutation runtime.
- Added synchronous and Promise::XS execution, DataLoader batching,
mutation serialization, direct JSON responses, and a PSGI adapter.
- Added SDL schema construction, printing, type-system extensions,
modern introspection, OneOf input objects, and custom directives.
- Implemented the September 2025 executable-document validation rules
and the query/mutation type-system validation profile.
- Added native program and persisted-bundle caches, weighted query cost,
depth, node, token, and request-body limits.
- Added fail-closed subscription handling across dynamic and persisted
execution paths; subscription streaming remains unsupported in 0.01.
- Added Apollo Federation 2 subgraph schema construction, service SDL,
bounded entity resolution, and key validation.
- Omitted the `errors` response entry when execution completed without
errors, as required by the GraphQL response specification.
- Made the default field resolver invoke hash coderefs and blessed source
methods with the graphql-perl-compatible argument contract.
- Added an `allow_introspection` runtime and PSGI policy for public
endpoints while retaining `__typename` support.
- Replaced the obsolete execution implementation selector with the
explicit `strict_sync` request option; execution is always native.
- Named the failing variable in variable coercion request errors, with
a bounded rendering of the invalid value, and rejected missing
Non-Null variables at variable preparation with the declared type.
- Added ASan, Valgrind, fuzz, soak, compiler-warning, XS ownership, POD,
metadata, and Perl 5.24 through 5.44 CI coverage.
- Added production-oriented examples, benchmark tooling, architecture
documentation, and XS memory-ownership guidance.