You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Safety rails are a debug feature that panic early if they detect that a widget was implement incorrectly. They only run with debug_assertions, and overall documentation is careful to never guarantee that they'll run. They're here as an additional help for users.
When we're running with debug assertions, we assume that user doesn't care too much about performance and a small overhead is fine. However, safety rails can add large (think O(N²)) overhead to passes when widgets have a very large number of children.
We should add an automatic escape hatch for cases where children_ids is large, so we can skip children in those cases. We can assume that if MyCustomWidget has a bug in child handling, the will probably show up with a small number of children too.
The text was updated successfully, but these errors were encountered:
Safety rails are a debug feature that panic early if they detect that a widget was implement incorrectly. They only run with
debug_assertions
, and overall documentation is careful to never guarantee that they'll run. They're here as an additional help for users.When we're running with debug assertions, we assume that user doesn't care too much about performance and a small overhead is fine. However, safety rails can add large (think
O(N²)
) overhead to passes when widgets have a very large number of children.We should add an automatic escape hatch for cases where
children_ids
is large, so we can skip children in those cases. We can assume that ifMyCustomWidget
has a bug in child handling, the will probably show up with a small number of children too.The text was updated successfully, but these errors were encountered: