laragraph/laravel-graphql-utils
A collection of practical GraphQL utilities for Laravel applications, offering reusable helpers for schemas, types, directives, pagination, and testing so you can build robust APIs with less boilerplate.
{"query":"…","0":"x"} — were passed through to webonyx/graphql-php, which parsed them as a batch and then threw a TypeError. Those become 500s, error-budget burn, and noisy alerts rather than clean 4xx responses. Patch-level upgrade, directly reduces unhandled-exception rate on the API edge.Adopt when:
webonyx/graphql-php and need correct handling of multipart request bodies (file uploads) and/or batched operations — the two transport shapes this package exists to normalize.webonyx/graphql-php constraint.Look elsewhere / skip when:
webonyx/graphql-php major and cannot upgrade; check the constraint before planning the bump.For executives: A small, free patch upgrade to a utility library that sits in front of our GraphQL API. It fixes a case where a malformed client request could crash the request handler and return a server error instead of a clean rejection. No new features, no migration, no user-visible change — it reduces a class of avoidable 500s and the on-call noise that comes with them. Cost: a routine dependency bump.
For engineering: laragraph/utils v2.3.2 rejects JSON and multipart bodies that webonyx/graphql-php would otherwise parse as a batch containing non-object entries (e.g. {"query":"…","0":"x"}), preventing a TypeError. Patch release, no API or behavior change for well-formed requests; malformed-but-batch-shaped payloads now fail fast rather than reaching the executor. Upgrade is a composer bump with no code changes; validate that your webonyx/graphql-php constraint resolves, then confirm the multipart-upload and batched-query integration tests still pass. Worth folding into the current input-hardening work rather than a dedicated ticket.
How can I help you explore Laravel packages today?