Shiny.Maui.Shell v6 support for AI routing tools Learn More
DataSync Releases
1.0 - May 2026
Section titled “1.0 - May 2026” Feature
Initial release of Shiny.DataSync — AOT-compliant offline-first data synchronization for .NET MAUI and desktop apps
Feature
ISyncService with full CRUD operations: Insert, Update, Remove, typed and untyped variants Feature
Sync() runs a full cycle: Clean → Push → Pull with per-entity type granularity Feature
Per-entity sync direction:
SyncDirection.Both, PullOnly, and PushOnly Feature
Configurable pull throttling via
PullMinimumTime and incremental pull via PullDateVariable Feature
Batched push with configurable
PushBufferSize (default: 50 entities per request) Feature
Four composable data removal strategies: soft-delete, tombstone, reconciliation, and expiry predicates
Feature
Reconciliation safety — skips entities with pending local changes to avoid removing in-progress work
Feature
ISyncInterceptor for per-request HTTP modifications (auth headers, custom headers) Feature
Observable sync events via
WhenSync() — push/pull started, completed, and failed with entity type and count Feature
Push queue management:
GetQueue(), Clear(), and GetMetadata() with per-entity push attempt tracking Feature
MaxPushAttempts configuration — automatically drops poison queue items after N failed attempts during Clean Feature
Automatic Shiny Jobs background sync registration — no manual
AddJob() needed Feature
Separate
DeleteUri support for APIs that use different endpoints for create/update vs. delete Feature
Version tracking via
VersionSelector for server-driven versioning Feature
Built on Shiny.DocumentDb.Sqlite for local entity storage and internal metadata
Feature
Full AOT compliance — all serialization uses
System.Text.Json source-generated contexts