odoo / owl

OWL: A web framework for structured, dynamic and maintainable applications
https://odoo.github.io/owl/
Other
1.14k stars 344 forks source link

unclear error messages #1550

Open ged-odoo opened 11 months ago

ged-odoo commented 11 months ago

If I add a throw error in the setup of a component (see playground example 1) I have the following confusing error:

owl.js:1576 Uncaught (in promise) Error: An error occured in the owl lifecycle (see this Error's "cause" property)
    at handleError (owl.js:1576:31)
    at App.handleError (owl.js:5784:16)
    at MountFiber._render (owl.js:1722:26)
    at MountFiber.render (owl.js:1711:14)
    at ComponentNode.initiateRender (owl.js:2375:19)
handleError @ owl.js:1576
handleError @ owl.js:5784
_render @ owl.js:1722
render @ owl.js:1711
initiateRender @ owl.js:2375
await in initiateRender (async)
mountComponent @ owl.js:2359
mountNode @ owl.js:5705
mount @ owl.js:5676
mount @ owl.js:5791
(anonymous) @ VM103:37
owl.js:1576 Uncaught (in promise) Error: An error occured in the owl lifecycle (see this Error's "cause" property)
    at handleError (owl.js:1576:31)
    at App.handleError (owl.js:5784:16)
    at MountFiber._render (owl.js:1722:26)
    at MountFiber.render (owl.js:1711:14)
    at ComponentNode.initiateRender (owl.js:2375:19)

I think that it was clearer before, i would like to see in the traceback that the error comes from the setup function of the component.

Another example: if there is an error in a template, (see playground ex2) we get the following traceback:

owl.js:1576 Uncaught (in promise) Error: An error occured in the owl lifecycle (see this Error's "cause" property)
    at handleError (owl.js:1576:31)
    at App.handleError (owl.js:5784:16)
    at Fiber._render (owl.js:1722:26)
    at Fiber.render (owl.js:1711:14)
    at ComponentNode.initiateRender (owl.js:2375:19)
handleError @ owl.js:1576
handleError @ owl.js:5784
_render @ owl.js:1722
render @ owl.js:1711
initiateRender @ owl.js:2375
await in initiateRender (async)
(anonymous) @ owl.js:5777
template @ VM240:10
_render @ owl.js:1719
render @ owl.js:1711
initiateRender @ owl.js:2375
await in initiateRender (async)
mountComponent @ owl.js:2359
mountNode @ owl.js:5705
mount @ owl.js:5676
mount @ owl.js:5791
(anonymous) @ VM238:36
owl.js:1576 Uncaught (in promise) Error: An error occured in the owl lifecycle (see this Error's "cause" property)
    at handleError (owl.js:1576:31)
    at App.handleError (owl.js:5784:16)
    at Fiber._render (owl.js:1722:26)
    at Fiber.render (owl.js:1711:14)
    at ComponentNode.initiateRender (owl.js:2375:19)

not very useful...