NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #4171 most downloaded on pub.dev
A common platform interface for the Tracelet background geolocation plugin. Used by tracelet_android and tracelet_ios implementations.
Last release 20 days ago
18 Sep 2026
Release timing varies
gaps range from 8 days to 5 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
7 months old
165 releases · first in 2026
One column per month.
CHORE: Update cross-package dependency constraints to ^1.4.5.
^1.4.5.CHORE: Update cross-package dependency constraints to ^1.4.4.
^1.4.4.CHORE: Update cross-package dependency constraints to ^1.4.3.
^1.4.3.CHORE: Update cross-package dependency constraints to ^1.4.2.
^1.4.2.CHORE: Update cross-package dependency constraints to ^1.4.1.
^1.4.1.FEAT: Add isDatabaseEncrypted() and encryptDatabase() platform methods for encrypted SQLite support.
isDatabaseEncrypted() and encryptDatabase() platform methods for encrypted SQLite support.getAttestationToken() platform method for device attestation (Play Integrity / App Attest).getDeadReckoningState() platform method for dead reckoning position estimation.getCarbonReport() platform method for carbon emission estimation from tracked journeys.^1.4.0.FIX: Add offset field to SQLQuery to match native platform handlers that read it.
offset field to SQLQuery to match native platform handlers that read it.DeltaEncoder — 2.1x faster encode via cached DateTime parsing and precomputed rounding factors.GeoUtils.haversine — eliminate redundant sqrt, precompute pi/180, inline _toRad.getCount() ignores limit/offset/order from SQLQuery.CHORE: Update cross-package dependency constraints to ^1.3.5.
^1.3.5.CHORE: Patch bump for federation consistency with tracelet 1.3.4.
tracelet 1.3.4.CHORE: Patch bump for federation consistency with tracelet 1.3.3.
tracelet 1.3.3.CHORE: Patch bump for federation consistency with tracelet 1.3.2.
tracelet 1.3.2.CHORE: Patch bump for federation consistency with tracelet 1.3.1.
tracelet 1.3.1.CHORE: Version bump for federation consistency with tracelet 1.3.0.
tracelet 1.3.0.FEAT: Add NotificationPriority enum — min, low, defaultPriority, high, max — replacing raw int for Android foreground notification priority.
NotificationPriority enum — min, low, defaultPriority, high, max — replacing raw int for Android foreground notification priority.HashAlgorithm enum — sha256, sha384, sha512 — replacing String for audit trail hash algorithm configuration.FEAT: Add BatteryBudgetEngine — a pure-Dart feedback control loop that automatically adjusts distanceFilter, desiredAccuracy, and periodic interval to
BatteryBudgetEngine — a pure-Dart feedback control loop that automatically adjusts distanceFilter, desiredAccuracy, and periodic interval to stay within a configurable battery budget (% drain/hour). Compares measured drain against target every 5 minutes; if over budget, increases distance filter (up to 1000 m) and degrades accuracy (high → medium → low → veryLow → passive); if under budget, tightens distance filter (down to 10 m) and improves accuracy. Includes BudgetAdjustmentEvent with currentBatteryDrain, targetBudget, newDistanceFilter, newDesiredAccuracy, and optional newPeriodicInterval.CarbonEstimator — per-trip and cumulative CO₂ emission calculator using mode-specific emission factors (gCO₂/km). Default factors use EU EEA 2024 averages: car = 192, bus = 89, train = 41, walking/cycling = 0. Accepts GPS coordinates + activity type from activity recognition, accumulates distance per mode via Haversine, and provides structured TripCarbonSummary with totalCarbonGrams, totalDistanceMeters, carbonByMode, distanceByMode, and dominantMode. Tracks cumulative totals across multiple trips for fleet/compliance reporting.DeltaEncoder — batch location compression codec using delta encoding. First location in a batch is transmitted in full (marked ref: true); subsequent positions sent as deltas with shortened field names (la = Δlatitude, lo = Δlongitude, t = Δtime in seconds, s = Δspeed, h = Δheading with shortest-arc normalization, a = Δaccuracy, al = Δaltitude, b = Δbattery). Coordinate precision configurable (5 = ~1.1 m, 6 = ~0.11 m). Symmetric encode()/decode() for bidirectional use. Achieves 60–80% payload reduction for high-frequency tracking batches.RTree<T> — generic R-tree spatial index enabling O(log n) geofence proximity queries versus O(n) linear search. Supports insert(lat, lng, radius, data), remove(data), queryCircle(lat, lng, radiusMeters), and queryBBox(minLat, minLng, maxLat, maxLng). Uses quadratic split strategy, latitude-corrected degree-to-meter bbox conversion, and Haversine post-filtering for accurate circle queries. Handles 10,000+ geofences with sub-millisecond lookup times.BatteryBudgetEngine, BudgetAdjustmentEvent, CarbonEstimator, TripCarbonSummary, DeltaEncoder, and RTree from the algorithms.dart barrel file.GeofenceEvaluator and LocationProcessor for improved algorithm integration with new sparse updates and dead reckoning configuration.FEAT: First stable release of tracelet_platform_interface.
tracelet_platform_interface.flutter_background_geolocation throughout.PERF: Use Float64List for Kalman filter state matrices, add _pTemp scratch buffer (D-C3).
Float64List for Kalman filter state matrices, add _pTemp scratch buffer (D-C3)._p.fillRange() in Kalman.reset() instead of re-allocating (D-M7).TripManager waypoints list to 5000 entries (D-H3).Queue<Map> with O(1) removeFirst() instead of List.removeAt(0) O(n) for waypoint cap trimming (D-L2)._cachedInsideView in GeofenceEvaluator with invalidation at all 6 mutation points (D-M4).num branch in _toDouble() — int/double already cover all num subtypes (D-L1).matchesSchedule() now delegates to parse() to eliminate duplicated parsing logic (D-L3).CHORE: Version bump for platform consistency.
CHORE: Version bump for platform consistency.
DOCS: Fix unresolved dartdoc references ([GeoConfig], [GeoConfig.periodicLocationInterval]).
[GeoConfig], [GeoConfig.periodicLocationInterval]).example/example.dart for pub.dev documentation score.FEAT: Add canScheduleExactAlarms() and openExactAlarmSettings() abstract methods to TraceletPlatform and MethodChannel implementations.
canScheduleExactAlarms() and openExactAlarmSettings() abstract methods to TraceletPlatform and MethodChannel implementations.FEAT: Add privacy zone abstract methods to TraceletPlatform and MethodChannel implementations.
TraceletPlatform and MethodChannel implementations.TraceletPlatform and MethodChannel implementations.FEAT: Add TrackingMode.periodic enum value for periodic interval tracking.
TrackingMode.periodic enum value for periodic interval tracking.startPeriodic() method to TraceletPlatform and MethodChannelTracelet.CHORE: Version bump for consistency.
FEAT: AdaptiveSamplingEngine — multi-factor distance filter computation (activity type, battery level, charging state, speed). 33 unit tests.
AdaptiveSamplingEngine — multi-factor distance filter computation (activity type, battery level, charging state, speed). 33 unit tests.HealthCheck model with HealthWarning enum (12 warning types) and HealthWarningDescription extension.LocationProcessor integration with adaptive sampling via AdaptiveContext.CHORE: Version bump for proximity-based geofence monitoring release.
DOCS: Improve README visuals with combined Android & iOS demo image.
DOCS: Document iOS background hardening and session manager support in README.
FEAT: getSettingsHealth() abstract method — OEM settings health check returning manufacturer, aggression rating, battery optimization status, and avai
getSettingsHealth() abstract method — OEM settings health check returning manufacturer, aggression rating, battery optimization status, and available OEM settings screens.openOemSettings(String label) abstract method — open OEM-specific settings screens by label.MethodChannelTracelet implementations for both new OEM methods.DOCS: Update README with shared Dart algorithms description and mock detection reference.
FEAT: MockDetectionLevel enum — disabled, basic, heuristic detection depth for mock/spoofed GPS.
MockDetectionLevel enum — disabled, basic, heuristic detection depth for mock/spoofed GPS.LocationProcessor mock location filter — rejects locations with isMock: true when rejectMockLocations is enabled.LocationProcessor timestamp monotonicity check — detects backward timestamps as heuristic spoof indicator (level ≥ 2).LocationProcessor.mockDetectionLevel field + copyWith() support.REFACTOR: Remove dead TraceletEvents.trip constant and TraceletEvents.all list — trip events now produced by Dart TripManager.
TraceletEvents.trip constant and TraceletEvents.all list — trip events now produced by Dart TripManager.TripManager now uses GeoUtils.haversine() instead of duplicate private _haversine() implementation.FEAT: LocationProcessor — shared Dart implementation of distance filtering, elasticity, accuracy filtering (adjust/ignore/discard), speed filtering, a
LocationProcessor — shared Dart implementation of distance filtering, elasticity, accuracy filtering (adjust/ignore/discard), speed filtering, and odometer gating. Replaces duplicate native Kotlin/Swift code.GeofenceEvaluator — shared Dart high-accuracy geofence proximity evaluation for circular and polygon geofences with ENTER/EXIT state tracking.ScheduleParser — shared Dart schedule string parsing, window matching, and alarm calculation for cross-platform scheduling.PersistDecider — shared Dart persistence decision logic based on PersistMode.algorithms.dart barrel file (GeoUtils, KalmanLocationFilter, TripManager, LocationProcessor, GeofenceEvaluator, ScheduleParser, PersistDecider).* CHORE: Bump version to 0.5.5.
* CHORE: Bump version to 0.5.4.
* CHORE: Bump version to 0.5.3.
* CHORE: Bump version to 0.5.2.
DOCS: Update README with links to all federated packages.
* FEAT: Web platform support. * CHORE: Bump version to 0.5.0.
FEAT: Add getMotionPermissionStatus() and requestMotionPermission() to platform interface.
getMotionPermissionStatus() and requestMotionPermission() to platform interface.FEAT: Add getLastKnownLocation() abstract method to platform interface.
getLastKnownLocation() abstract method to platform interface.ForegroundServiceConfig.enabled field to AppConfig for toggling foreground service.getCurrentPosition() with persist, samples, maximumAge, and extras parameters for enterprise one-shot location requests.Fix LICENSE file format for proper SPDX detection on pub.dev.
Bump Pigeon dependency from ^22.7.0 to ^26.1.7.
Add SPDX license: Apache-2.0 identifier for pub.dev scoring.
license: Apache-2.0 identifier for pub.dev scoring.Abstract platform interface with 38 methods.
Your coding agent can read these notes before it upgrades. Set up the MCP server →