Skip to content

Report a maximum of one error per field in error response #981

Open
@mz2

Description

@mz2

I may be misunderstanding something, but the error response behaviour in Absinthe appears to contradict the GraphQL spec. In https://github.com/absinthe-graphql/absinthe/blob/master/guides/errors.md it is stated that:

One or more errors for a field can be returned in a single {:error, error_value} tuple.

However, in the GraphQL specification (http://spec.graphql.org/June2018/#sec-Errors-and-Non-Nullability) the expected behaviour is stated as follows:

If the field returns null because of an error which has already been added to the "errors" list in the response, the "errors" list must not be further affected. That is, only one error should be added to the errors list per field.

Environment

The erroneous behaviour is documented behaviour with the present HEAD of master: https://github.com/absinthe-graphql/absinthe/blob/master/guides/errors.md

Expected behavior

A maximum of a single error should be populated per field as per the GraphQL spec.

Actual behavior

Any number of errors applicable for a given field is returned.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions