Skip to content

Releases: mozilla/rust-components-swift

96.2.1

04 Jan 20:21
2ff7705
Compare
Choose a tag to compare

v96.2.1 (2023-01-04)

Full Changelog

Places

What's changed

  • Limited the number of visits to migrate for History to 10,000 visits. (#5310)

96.2.0

04 Jan 18:10
43de48c
Compare
Choose a tag to compare

v96.2.0 (2023-01-03)

Full Changelog

Nimbus ⛅️🔬🔭

What's Changed

  • Fixed an issue where the NimbusQueues protocol was missing from the NimbusApi (#5298)

✨ What's New ✨

  • Added eventLastSeen query to the event store and jexl transforms (#5297)
  • Introduced the NimbusBuilder for Swift (#5307)

Tabs

What's Changed

  • Fixed a regression causing failure to read old tabs databases (#5286)

Autofill

🦊 What's Changed 🦊

  • Exposed autofill api to iOS consumer and resolved createKey function conflict with the Logins component.

96.1.3

09 Dec 03:07
90a4bb3
Compare
Choose a tag to compare

v96.1.3 (2022-12-08)

Full Changelog

Tabs

What's Changed

  • Fixed a regression causing failure to read old tabs databases (#5286)

96.1.2

08 Dec 14:52
1d17b24
Compare
Choose a tag to compare

v96.1.2 (2022-12-07)

Full Changelog

Logins

What's changed

  • Removes Fennec migration code. The function importMultiple no longer exists. (#5268)

Nimbus

What's Changed

  • Event store date comparison logic update to be entirely relative (#5265)
  • Updates event store to initialize all dates at the start of the current year (#5279)
  • Adds new Kotlin/Swift methods to clear the event store (#5279)
  • Adds Swift methods to wait for operation queues to finish (#5279)

Places

What's changed

  • Removes Fennec migration code. (#5268)
    The following functions no longer exist:
    • importBookmarksFromFennec
    • importPinnedSitesFromFennec
    • importVisitsFromFennec

Viaduct

What's New

  • Allow viaduct to make requests to the android emulator's host address via
    a new viaduct_allow_android_emulator_loopback() (in Rust)/allowAndroidEmulatorLoopback() (in Kotlin)
    (#5270)

Tabs

What's changes

  • The ClientRemoteTabs struct/interface now has a last_modified field which is the time
    when the device last uploaded the tabs.

96.1.0

29 Nov 22:23
7ca10ec
Compare
Choose a tag to compare

v96.1.0 (2022-11-29)

Full Changelog

FxA Client

What's new

  • Exposed a new function for swift consumers resetPersistedState
    • resetPersistedState can be used to refresh the account manager to reflect the latest persisted state.
    • resetPersistedState should be called in between a different account manager instance persisting the state, and the current account manager persisting state
      • For example, the Notification Service in iOS creates its own instance of the account manager, changes its state (by changing the index of the last retrieved send tab)
      • The main account manager held by the application should call resetPersistedState before calling any other method that might change its state. This way it can retrieve the most up to date index that the Notification Services persisted.

What's changed

  • The processRawIncomingAccountEvent function will now process all commands, not just one. This moves the responsibilty of ensuring each push gets a UI element to the caller.

96.0.1

20 Nov 21:38
0fef395
Compare
Choose a tag to compare

v96.0.1 (2022-11-18)

Full Changelog

Logins

What's Changed

  • Updated the URL redaction code to remove potential PII leak. Version 96.0.0 should not be used by downstream clients.

Nimbus

What's changed

  • Add methods to Kotlin and Swift to call the record event method on the nimbus client (#5244)

FxA Client

What's changed

  • The devices retrieved from the devices list are now only the devices that have been accessed in 21 days. This should help remove duplicates and idle devices for users. (#4984)

95.0.1

04 Nov 15:57
40d3589
Compare
Choose a tag to compare

v95.0.1 (2022-11-03)

Full Changelog

General

- Added function to unset the app-services error reporter

95.0.0

01 Nov 17:03
c3a40bc
Compare
Choose a tag to compare

v95.0.0 (2022-10-28)

Full Changelog

General

What's fixed

  • Fixed a bug released in 94.3.1. The bug broke firefox-ios builds due to a name conflict. (#5181)

What's Changed

  • Updated UniFFI to 0.21.0. This improves the string display of the fielded errors on Kotlin. Currently only logins is using these errors, but we plan to start using them for all components.

Autofill

⚠️ Breaking Changes ⚠️

  • The autofill API now uses AutofillApiError instead of AutofillError. AutofillApiError exposes a smaller number of variants, which
    will hopefully make it easier to use for the consumer.

Logins

⚠️ Breaking Changes ⚠️

  • Renamed LoginsStorageError to LoginsApiError, which better reflects how it's used and makes it consistent with
    the places error name.
  • Removed the LoginsApiError::RequestFailed variant. This was only thrown when calling the sync-related methods
    manually, rather than going through the SyncManager which is the preferred way to sync. Those errors will now be
    grouped under LoginsApiError::UnexpectedLoginsApiError.

What's Changed

  • Added fields to errors in logins.udl. Most variants will now have a message field.

Nimbus ⛅️🔬🔭

What's Changed

  • Disabled Glean events recorded when the SDK is not ready for a feature (#5185)
  • Add struct for IntervalData (behavioral targeting) (#5205)
  • Calls to log::error have been replaced with error_support::report_error (#5204)

Places

⚠️ Breaking Changes ⚠️

  • Renamed PlacesError to PlacesApiError, which better reflects that it's used in the public API rather than for
    internal errors.
  • Removed the JsonError, InternalError, and BookmarksCorruption variants from places error. Errors that
    resulted in InternalError will now result in UnexpectedPlacesError. BookmarksCorruption will also result in
    an UnexpectedPlacesError and an error report will be automatically generated. JsonError didn't seem to be
    actually used.

Tabs

⚠️ Breaking Changes ⚠️

  • The tabs API now uses TabsError with TabsApiError. TabsApiError exposes a smaller number of variants, which
    will hopefully make it easier to use for the consumer.

94.3.0

22 Sep 17:32
0470b9f
Compare
Choose a tag to compare

v94.3.0 (2022-09-20)

Full Changelog

General

What's Changed

  • Rust toolchain has been bumped to 1.63 and minimum version bumped to 1.61 to comply with our Rust Policy
  • Android: Upgraded NDK from r21d to r25b. (#5142)

Places

What's Changed

  • Added metrics for the run_maintenance() method. This can be used by consumers to decide when to schedule the next run_maintenance() call and to check if calls are taking too much time.

What's new

  • Exposed a function in Swift migrateHistoryFromBrowserDb to migrate history from browser.db to places.db, the function will migrate all the local visits in one go. (#5077).
    • The migration might take some time if a user had a lot of history, so make sure it is not run on a thread that shouldn't wait.
    • The migration runs on a writer connection. This means that other writes to the places.db will be delayed until the migration is done.

Nimbus

What's Changed

  • Added applyLocalExperiments() method as short hand for setLocalExperiments and applyPendingExperiments. (#5131)
    • applyLocalExperiments and applyPendingExperiments now returns a cancellable job which can be used in a timeout.
    • initialize function takes a raw resource file id, and returns a cancellable Job.

94.1.0

18 Aug 19:56
1703043
Compare
Choose a tag to compare

v94.1.0 (2022-08-18)

Full Changelog

Nimbus

What's new

  • Added telemetry to track how often apps query for variables before Nimbus is initialized. (#5091)