NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #602 most downloaded on pub.dev
Flutter bindings and tools for utilizing Datadog Mobile SDks
Last release 2 days ago
06 Oct 2026
Ships fairly regularly
a new release about every 4 weeks
Nearly every release is documented
notes for 52 of 55 stable releases
6 versions withdrawn
withdrawn after publishing
5 years old
69 releases · first in 2022
One column per quarter.
DeterministicSampler is now available, using Knuth hashing on session IDs to produce consistent sampling decisions across SDKs.
DeterministicSampler is now available, using Knuth hashing on session IDs to produce consistent sampling decisions across SDKs.Adds source-map symbolication support for WebAssembly-based Flutter web apps. Errors containing WebAssembly stack frames report error.source_type: bro
error.source_type: browser+wasm. They also include error.wasm_modules metadata with debug_info_type: sourcemap for each unique .wasm module URL.disallowList to RUM.Configuration.URLSessionTracking to exclude URLs from automatic RUM resource tracking, with * wildcard support.EXC_BREAKPOINT crash that could occur when a log or RUM attribute's encode(to:) throws after partially encoding a value.view was no longer required in RUM events, restoring the correct requirement.timeseries in dashboard/graph configurations.DatadogRumMonitor.handleEvent during JVM crashes.last_view_event.RuntimeException that could occur in SystemSettingsWrapper.featureContext.clear() calls in DatadogCore to prevent crashes.DdTags are now mixed into web view events for richer metadata.[Web] Avoid createJSInteropWrapper crash in wasm dry-run.
[Web] Use JS types in TracingUrl closure. See #1127
[Android] Prevent native crash when reading RUM context for tracing. See #1106
RumUserActionDetector.RumUserActionDetector.trackWatchdogTerminations to DatadogRumConfiguration.ddtags by key to avoid duplicate keys.onSessionStart is now called only after sampling information used by WebView Tracking is in place, avoiding missing traces in early requests.DefaultAppStartTimeProvider app start time computation.SourceLines annotation.Properly pin Android SDK to 3.11.0
Parse route query string into view.url, which allows for searching for query parameters in Datadog with @view.url_query.* .
@view.url_query.*.buildInKotlin set to false.isMainProcess detection.MemoryVitalReader.vital.name in Operation APIs.CUSTOM RUM actions immediately.NumberFormatException.IllegalArgumentException when reading trace input stream for last fatal ANR.Properly pin Android SDK version to 3.10.0.
The version constraint on datadog_flutter_plugin has been loosened to allow v4 in addition to v3.
datadog_flutter_plugin has been loosened to allow v4 in addition to v3.VitalCPUReader when the CPU tick counter rolls over.stopResource().sessionReplaySampleRate for deterministic Session Replay sampling.Properly pin Android SDK to 3.8.0.
Prevent stripping of iOS context methods. See #990
The datadog_flutter_plugin version constraint has been loosened to allow both v3 and v4 of the plugin.
datadog_flutter_plugin version constraint has been loosened to allow both v3 and v4 of the plugin.startAction / stopAction).ViewEvents.Properly pin Android SDK to 3.6.0.
[iOS] Prevent stripping of iOS context methods. See #990.
[iOS] Fix stripped C symbol for getting context. See #979.
Improve precedence handling for nested GestureDetector and InkWell.
GestureDetector and InkWell.Properly pin Android SDK version to 3.5.0.
Add missing Proguard rules for Android. See #932
Switch to merged vital event mapper in Android.
dart:io network tracking from background isolates.source, variant, and sdkVersion.TraceContextInjection default to sampled.LogEvent device types.versionMajor property.service and sdk_version tags to log requests.addAccountExtraInfo call.ddtags over query parameters.ddtags over query parameters.disableJankStats config option.KronosTimeProvider.StackOverflowError.ddtags of LogEvent.ddtags of LogEvent.Pin DictionaryCoder to exact version 1.2.0 for iOS 12 compatibility.
DictionaryCoder to exact version 1.2.0 for iOS 12 compatibility.[Web] Add tracking consent support.
[Web] Add extra user info support. See #852
[WEB] Fix valueToJs for WASM builds. See #820.
valueToJs for WASM builds. See #820.Fix compileSdk to be 35 on main package. See #834
Add back in import of meta package. See #815
Don't attempt to get size of RenderBoxes that don't have size. See #809
Support spm in all packages. See #776
json_serializable package version.Fix an issue where nested gesture detectors would always use the topmost. See #738
InAppWebView. See #624RumUserActionAnnotation in subtrees.addAttributes and removeAttributes APIs.PerformanceMetric events.time-to-network-settle view metric.interaction-to-next-view-metric._dd.rule_psr attribute calculation for RUM.updateFeatureContext performances.null viewLoadingTime on first call to addViewLoadingTime.Add missing AP1 support to Flutter Web.
AP1 support to Flutter Web.Fix iOS compilation for Flutter 3.29
Support for datadog_inappwebview_tracking. See #624.
datadog_inappwebview_tracking. See #624.Add ability to add custom gesture detectors to RumUserActionDetector.
RumUserActionDetector.RumUserActionAnnotation.Route.TelemetryErrorEvent with throwable.Add DialogRoute handling to the defaultViewInfoExtractor.
DialogRoute handling to the defaultViewInfoExtractor.addViewLoadingTime API to RUM.Support selective injection of trace contexts with TraceContextInjection configuration item.
dart:html and package:jscompileSdkVersion 34 to prevent issues with Flutter 3.24. See [#639].#fileID over #filePath as the default argument in errors.Remove use of singletons for RUM / Logs plugins to fix "No Implementation Found" errors. See [#596]
Support 128-bit trace ids in distributed tracing.
errorEventMapper for crashes.errorEventMapper for crashes.Add error.source_type to logs when a stack trace is provided.
error.source_type to logs when a stack trace is provided.js package to allow <0.8. See [#572]null to addAttribute now calls removeAttribute instead of silently failing.DatadogAttributes.errorFingerprint.The version constraint on datadog_flutter_plugin has been loosened to allow v3 or v4.
datadog_flutter_plugin has been loosened to allow v3 or v4.batchProcessingLevel configuration option.clearAllData method.firstPartyHosts not working for Flutter Web. See [#554]view.time_spent in RUM view eventsDatadogCoreThe version constraint on datadog_flutter_plugin has been loosened to allow both v3 and v4.
datadog_flutter_plugin has been loosened to allow both v3 and v4.Update iOS SDK to 2.5.1. For a full list of changes, see the iOS Changelog
view.time_spent being not reported correctly in RUM views.The version constraint on datadog_flutter_plugin has been loosened to allow v4, so datadog_inappwebview_tracking can now be used alongside either v3 o
datadog_flutter_plugin has been loosened to allow v4, so datadog_inappwebview_tracking can now be used alongside either v3 or v4 of the core plugin.datadog_flutter_plugin has been loosened to allow v4, so projects upgrading to datadog_flutter_plugin v4 no longer need a dependency override.DatadogLogger will no longer leak its reference to its native Logger.DatadogSdk on iOS.LogLevel being private. See [#518]DatadogRumPlugin a singleton on Android to avoid losing its connection to the RUMMonitor during backgrounding.Release 2.0 introduces breaking changes. Follow the Migration Guide to upgrade from 1.x
Release 2.0 introduces breaking changes. Follow the Migration Guide to upgrade from 1.x
Nothing published for this version
Nothing published for this version
Fix an issue where failing to load Datadog modules on Web threw an error (and potentially broke application loading).
Ignore adding custom timings and feature flags for the stopped view.
Use PlatformDispatcher.onError over runZonedGuarded for automatic error tracking and to avoid a Zone mismatch exception in Flutter 3.10. See [#416]
PlatformDispatcher.onError over runZonedGuarded for automatic error tracking and to avoid a Zone mismatch exception in Flutter 3.10. See [#416]Add the ability to stop a RUM session. A new session is started on the next user interaction or on the next view start. See [#147]
Nothing published for this version
Fix a crash on exit on iOS. See [#390]
Add Web View tracking through the webview_flutter package.
webview_flutter package.consolePrint callback earlier in iOS to make sure initialization errors can be seen in the console. See [#328]version not properly populating on Flutter Web. See [#334]RumUserActionDetector to detect more widgets, including BottomNavigationBar, Tab, Switch, and RadioFlutterError.presentError made in runApp. See [#358]sessionReplaySampleRate to 0 during initialization for Browser as Session Replay is not supported.errorType on DdRum.addError and DdRum.addErrorInfo. See [#372]Nothing published for this version
Nothing published for this version
Fix b3 and tracecontext using incorrect Trace and Span ids during request tracking.
Potentially fix a crash on exit on iOS. See [#341]
Remove reference to a gradle file that was not included in pub deploy
pub deploy🔥 BREAKING - Log functions (debug, info, warn) now use attributes as a named argument instead of a positional argument.
debug, info, warn) now use attributes as a named argument instead of a positional argument.logEventMapperDatadogSdk.runAppLogEvent.DatadogRumMonitor#rootScope when processing fatal error.device.architecture to logs.Nothing published for this version
Add DatadogFlagsConfiguration.initializationTimeout for the first context initialization. The default is five seconds. Set it to null , zero, or a neg
DatadogFlagsConfiguration.initializationTimeout for the first context initialization. The default is five seconds. Set it to null, zero, or a negative duration to disable it.initialize() with FlagsInitializationTimeoutException when initialization exceeds the timeout. Catch this exception to continue application startup. The assignment operation continues and can make assignments available later.providerNotReady.DatadogFlagsConfiguration.initializationTimeout to the core SDK. The first context initialization has a five-second timeout by default. Set it to null, zero, or a negative duration to disable it.FlagsInitializationTimeoutException when initialization exceeds the timeout. Catch this exception to continue application startup. The assignment operation continues and can make assignments available later.datadog_flags: ^1.1.0 so the core SDK supports initialization timeouts.datadog_flutter_plugin versions from 3.4.0 through 4.x.addUserExtraInfo method for providing extra user attributes without overwriting other user info. See [#254][]RumConfiguration.vitalUpdateFrequency to allow control over how often the Native SDKs query for vitals (CPU and memory usage).Add CPU architecture to the collected device information.
Your coding agent can read these notes before it upgrades. Set up the MCP server →