geldata / geldata/gel-rust

Error messages should provide better context

Open
#282 1 comment 2 reactions 1 assignee Claimed by @quinchs View on GitHub
bug
Dominant language
Rust
Stars
231
Forks
30
PR merge metrics
No merged PRs in 30d

Description

Edgedb's error messages can be quite unintuitive about what is needed to fix the error, what the error is, and it should include more information about the invalid query, and the errors should provide more actionable information for the user.

Some generic information that would be useful for all errors.

- The query
- The line and column of the error in the code (not the query).
- Highlighting the line and column in the error.

Examples of unituitive errors:

This error is something to do with not referencing any inner property in a link property.
```
index out of bounds: the len is 1 but the index is 1
```

This error is caused when you're missing a field **OR** the field list in the query doesn't match the order of the `Queryable` struct, which is incredibly user-hostile, because you're only going to realise that's the problem through trial and error.
```
DescriptorMismatch

Caused by:
unexpected field id, expected name
```

References the query instead of the code.
```
InvalidReferenceError: object type 'default::PendingSaga' has no link or property 'name' (on line 1, column 26)
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.