-
Notifications
You must be signed in to change notification settings - Fork 525
Open
Labels
⛃ re_datastoreaffects the datastore itselfaffects the datastore itself📺 re_vieweraffects re_viewer itselfaffects re_viewer itself🧑💻 dev experiencedeveloper experience (excluding CI)developer experience (excluding CI)
Description
Context
Right now we have two main ways of reporting errors:
re_log::error!
results in a pop-up in the viewer.- Some UI widgets specifically catch errors and map them to
re_ui.error_text
A common source of errors is due to deserialization of components, whether from the data-store or blueprint store. These will both continue to be an issue at varying degrees until we have proper forward/backwards compatibility.
Where we use error_text
vs error!
is mostly ad-hoc at the moment resulting in inconsistent and problematic experiences such as:
Requests
- One obvious / consistent way to handle errors across all different parts of the viewer code (during system execution, during blueprint handling, during UI building, etc.)
- Deserialization errors should be returned somehow attached to the entity --> if I click an entity I should be able to see which components are failing to deserialize. Ideally visible in the timeline as well.
- Minimize usage of ephemeral pop-ups. Errors should go to a more persist error-log reachable through the UI.
- Ability to attach stack-trace without just throwing it into the error string as text.
teh-cmc
Metadata
Metadata
Assignees
Labels
⛃ re_datastoreaffects the datastore itselfaffects the datastore itself📺 re_vieweraffects re_viewer itselfaffects re_viewer itself🧑💻 dev experiencedeveloper experience (excluding CI)developer experience (excluding CI)