# (*) Granular Feedback

Issues are handled differently depending on their severity:

  • Informative, such as Deprecated fields and directives: to indicate they must be replaced with a substitute
  • Non-blocking issues, such as Schema/Database warnings: when an issue happens on a non-mandatory field
  • Blocking issues, such as Query/Schema/Database errors: when they use a wrong syntax, declare non-existing fields or directives, or produce an issues on mandatory arguments
//1. Deprecated fields
/?query=
  posts.
    title|
    isPublished

//2. Schema warning
/?query=
  posts(limit:3.5).
    title

//3. Database warning
/?query=
  users.
    posts(limit:name()).
      title

//4. Query error
/?query=
  posts.
    id[book](key:value)

//5. Schema error
/?query=
  posts.
    nonExistantField|
    isStatus(
      status:non-existant-value
    )

View query results #1

View query results #2

View query results #3

View query results #4

View query results #5

# Issues bubble upwards

If a field or directive fails and it is input to another field, this one may also fail.

/?query=
  post(divide(a,4)).
    title

View query results

# Path to the issue

Issues contain the path to the composed field or directive were it was produced.

/?query=
  echo([hola,chau])<
    forEach<
      translate(notexisting:prop)
    >
  >

View query results

# Log information

Any informative piece of information can be logged (enabled/disabled through configuration).

/?
actions[]=show-logs&
postId=1&
query=
  post($postId).
    title|
    date(d/m/Y)

View query results

Last Updated: 4/20/2020, 9:21:59 AM