github mozilla/application-services v155.0

4 hours ago

v155.0 (2026-08-13)

✨ What's Changed ✨

Ads-Client

  • Add AdsClient::shutdown(), which closes the database connection early so it happens before Firefox Desktop's late-write shutdown barrier rather than during GC. In addition, this drops all held UniFFI callbacks (held in the MozAdsTelemetryWrapper) to avoid crash on a Firefox Desktop quit.

Autofill

  • Add Store::shutdown(), which closes the database connection early so it happens before Firefox Desktop's late-write shutdown barrier rather than during GC. Operations after shutdown return DatabaseClosed. (Bug 2050036)
  • Add address metadata APIs for importing records already persisted elsewhere: add_address_with_meta, add_many_addresses_with_meta, update_address_with_meta and add_many_address_tombstones, with the bulk variants isolating per-record failures. AddressMeta carries the guid, timestamps and sync_change_counter, so a record keeps whether it still has changes pending upload.
  • Add Store::addresses_bridged_engine(), exposing the existing address sync engine through mozIBridgedSyncEngine so Firefox Desktop can drive address sync.

Fxa Client

  • The CheckAuthorizationStatus and Disconnect events are now valid from all states except Uninitialized.
    In the cases where the failed before, they're now no-ops.

Nimbus

  • NimbusClient::get_available_firefox_labs() now includes detailed debug level logging for each processed lab. (#7482)

Remote Settings

  • Replacing v1 routes with v2 routes, removing added v2 routes (#7492)
  • Verify signature of imported data when .get() is called with sync_if_empty: true (#7518)
  • Do not quote _since values with the v2 API (#7523)

Sync Manager

  • SyncManager::sync() now fails immediately with a new SyncManagerError::Busy when a sync is already in progress, instead of blocking until it finishes.

Full Changelog

Don't miss a new application-services release

NewReleases is sending notifications on new releases.