v145.0 (2025-10-13)
✨ What's New ✨
Swift
- Added
@unchecked Sendable
to classes that conform toFeatureManifestInterface
. (#6963)
Ads Client
- Added the Ads Client component to the Megazord.
- Updated the ApiError enum to AdsClientApiError to avoid naming collision.
- The
context_id
is now generated and rotated via the existing eponym component crate.
Relay
- ⚠️ Breaking Change: The error handling for the Relay component has been refactored for stronger forward compatibility and more transparent error reporting in Swift and Kotlin via UniFFI.
- API and network errors from the Relay server are now converted to a single
RelayApiError::Api { status, code, detail }
variant, exposing the HTTP status code, a machine-readable error code (if present), and a human-readable detail message. - Downstream client apps can now handle server errors based on both the
status
anderror_code
fields directly, without additional changes to the Rust component - even as server-side error codes evolve. - Consumers must update their error handling code to match the new
Api { status, code, detail }
shape.
- API and network errors from the Relay server are now converted to a single
Places
places::storage::history_metadata::get_most_recent(limit: i32)
was added to get most recent history metadata limited to a number. (#7002)
FxA Client
- Expose
getAttachedClients
from the uniffi layer in the Android wrapper.
🦊 What's Changed 🦊
Docs
- Updated the components strategy doc to better reflect the current state of application services. (#6991)