error_catch_boundary 1.3.1
error_catch_boundary: ^1.3.1 copied to clipboard
A React-inspired error boundary package for Flutter that catches subtree build errors, prevents UI crashes, logs exceptions, and displays customizable/localizable fallback UI.
1.3.1 #
ErrorBoundaryStrings& Localized Fallback UI: AddedErrorBoundaryStringsdata class to easily customize or translate default fallback text (message, retry buttons, debug header) across individual boundaries or app-wide viaGlobalErrorBoundaryConfig.- Material-Independent Fallback: Ensured
DefaultErrorFallbacksafely renders insideCupertinoAppor widget trees without an ambientMaterialancestor by wrapping in a rootMaterialwidget. ErrorBoundary.wrapCallback&ErrorBoundary.reportError: Added helper methods to reliably intercept synchronous and asynchronous exceptions in gesture callbacks (such as buttononPressed) executing on the event loop outside the build zone.- Exponential Backoff Ceiling & Jitter (
AutoRetryConfig): AddedmaxDelaycap andjitterFactorrandomization to prevent indefinite doubling and avoid thundering-herd reconnect spikes during backend recovery. - Global Auto-Retry Inheritance:
ErrorBoundarywidgets now automatically inheritautoRetryConfigfromGlobalErrorBoundaryConfigwhen not configured locally. ErrorBoundaryControllerState & Targeted Reset: Added active error state queries (hasError,errorCount,errors,failingBoundaryNames), selective boundary reset by name (reset(name: ...)andresetBoundary(...)), and disposal safety against post-dispose invocation.- Incident Correlation (
errorId×tamp): Added unique incidenterrorIdandtimestampfields toFlutterErrorBoundaryDetailsfor logging across telemetry tools.
1.3.0 #
ErrorBoundary.async& Zone Error Interception: AddedErrorBoundary.asyncconstructor (catchAsync: true) utilizingrunZonedGuardedto intercept unhandled asynchronous exceptions in Futures, event callbacks, and asyncinitStatecalls within the subtree.- Custom Transition Builders (
transitionBuilder): AddedtransitionBuilderparameter toErrorBoundaryandGlobalErrorBoundaryConfigto support custom transition animations (ScaleTransition,SlideTransition,FadeTransition, etc.) between active child content and fallback UI.
1.2.0 #
- Boundary Tagging & Names (
name): Addednameproperty toErrorBoundaryandFlutterErrorBoundaryDetailsfor enriched error telemetry and logging in Sentry, Firebase Crashlytics, and Datadog. - Asynchronous Pre-Retry Hook (
onRetry): AddedonRetrysupport toErrorBoundaryandGlobalErrorBoundaryConfigwith built-in loading indicator on the fallback retry button while async operations (e.g. re-fetching data, refreshing state providers) complete. - Retry Cooldown & Rate-Limiting (
minRetryCooldown): AddedminRetryCooldownparameter to throttle and prevent rapid spamming of manual retry attempts. - Subtree Remount on Reset: Enhanced
_ErrorBoundaryStatewith automated subtree remount keying on resets to guarantee fresh rebuilds.
1.1.1 #
- Updated
LICENSEto canonical SPDX MIT License formatting for pub.flutter-io.cn recognition. ErrorBoundaryController: Programmatic control to reset attached error boundaries from outside the widget tree.GlobalErrorBoundaryConfig: Inherited configuration widget providing app-wide defaultfallbackBuilder,onErrorlogger callbacks,shouldCatchpredicates, andshowDebugDetailsflags.AutoRetryConfig: Automated retries with customizable retry intervals, max retry limits, and optional exponential backoff.- Selective Error Filtering (
shouldCatch): Filter predicate function allowing specific exception types to be caught while letting others bubble up. - Debug Stack Trace Inspector: Expandable debug details view in
DefaultErrorFallback(enabled automatically inkDebugMode). - Smooth UI Transitions: Added
AnimatedSwitchersupport for seamless transitions between child content and fallback UIs.
1.1.0 #
- Feature release with
ErrorBoundaryController,GlobalErrorBoundaryConfig,AutoRetryConfig, and debug stack trace inspector.
1.0.1 #
- Updated repository and homepage URL.
- Updated LICENSE formatting for pub.flutter-io.cn recognition.
- Code formatting improvements.
1.0.0 #
- Initial release of
error_catch_boundary. - Catch subtree
build()errors gracefully to prevent full-screen crashes. - Default fallback UI with built-in retry functionality.
- Custom fallback UI builder (
fallbackBuilder). - Automated logging callback (
onError) to integrate with monitoring services like Sentry and Firebase Crashlytics.