• Ian Hickson's avatar
    Rationalise all our exception handling. · ee703da9
    Ian Hickson authored
    - Create a FlutterErrorDetails struct-like class that describes an
    
      exception along with more details that aren't in the exception, like
    
      where it was caught and what was going on when it was caught.
    
    
    
    - Provide a FlutterError static API for handling these objects:
    
    
    
      - FlutterError.onError which is called whenever Flutter catches an
    
        error.
    
    
    
      - FlutterError.reportError() which handles an error.
    
    
    
      - FlutterError.dumpErrorToConsole() which is the default behavior
    
        for onError.
    
    
    
    - Removes all the existing exception handler callbacks.
    
    
    
    - Replaces all the existing places that described exceptions using
    
      debugPrint with calls to FlutterError.reportError().
    
    
    
    - Extend lockState() to also catch exceptions, so that we catch
    
      exceptions that happen during finalizers.
    
    
    
    - Make the test framework catch errors and treat them as failures.
    
    
    
    - Provide a mechanism to override this behavior in the test framework.
    
    
    
    - Make the tests that used to depend on the exception handler
    
      callbacks use this new mechanism.
    
    
    
    - Make pump() also support the phase argument.
    
    
    
    - Improve some tests using these new features.
    
    
    
    Fixes #2356, #2988, #2985, #2220.
    ee703da9
Name
Last commit
Last update
..
app.dart Loading commit data...
asset_vendor.dart Loading commit data...
auto_layout.dart Loading commit data...
banner.dart Loading commit data...
basic.dart Loading commit data...
binding.dart Loading commit data...
child_view.dart Loading commit data...
debug.dart Loading commit data...
dismissable.dart Loading commit data...
drag_target.dart Loading commit data...
editable.dart Loading commit data...
focus.dart Loading commit data...
form.dart Loading commit data...
framework.dart Loading commit data...
gesture_detector.dart Loading commit data...
gridpaper.dart Loading commit data...
heroes.dart Loading commit data...
implicit_animations.dart Loading commit data...
locale_query.dart Loading commit data...
media_query.dart Loading commit data...
mimic.dart Loading commit data...
mixed_viewport.dart Loading commit data...
modal_barrier.dart Loading commit data...
navigator.dart Loading commit data...
notification_listener.dart Loading commit data...
overlay.dart Loading commit data...
page_storage.dart Loading commit data...
pageable_list.dart Loading commit data...
pages.dart Loading commit data...
performance_overlay.dart Loading commit data...
placeholder.dart Loading commit data...
raw_keyboard_listener.dart Loading commit data...
routes.dart Loading commit data...
scroll_behavior.dart Loading commit data...
scrollable.dart Loading commit data...
scrollable_grid.dart Loading commit data...
scrollable_list.dart Loading commit data...
semantics_debugger.dart Loading commit data...
status_transitions.dart Loading commit data...
table.dart Loading commit data...
title.dart Loading commit data...
transitions.dart Loading commit data...
unique_widget.dart Loading commit data...
virtual_viewport.dart Loading commit data...