v115.0 (2023-06-05)
Push
⚠️ Breaking Changes ⚠️
- The constructor for the Push Manager has changed. (#5389)
- Push manager now takes only one argument, a Push Configuration object
- Push manager no longer takes in the registration_id (token) in construction
- Push manager now takes a new
verifyConnectionRateLimiter
parameter in its configuration, it defines the number of seconds between consecutive verify connection requests.
- The
update
function no longer returns a boolean, the consumers did not use the return value. (#5389) - The Error exposed by push is now
PushApiError
, which is reduced to the set of errors the consumer is expected to handle. (#5389):PushApiError::UAIDNotRecognizedError
: The server lost the client's uaid. The app should callverify_connection(true)
and notify all consumers of pushRecordNotFoundError
: The record containing the private key cannot be found. The consumer should callverify_connection(true)
and notify all consumers of pushInternalError
: Consumer should report the error, but ignore it
Nimbus ⛅️🔬🔭
🦊 What's Changed 🦊
- Add additional Cirrus SDK helper methods and add Python testing for the generated Cirrus Python code (#5478).
- Add
user_id
RandomizationUnit (for Cirrus) (#5564). - Fixed up a bug in
get_experiment_branch
andget_active_experiments
((#5584)). - Renamed
GleanPlumb
classes and protocols toNimbusMessaging
in Swift. Added more protocols to make it more mockable in application code (#5604).
Nimbus CLI ⛅️🔬🔭👾
✨ What's New ✨
- Extra commands:
capture-logs
,tail-logs
,test-feature
,fetch
andapply-files
. (#5517) - Extra commands and options to open deeplinks with the app. (#5590).
- An update checker to keep you and your installation fresh. (#5613).
- An installation script to make getting
nimbus-cli
easier. (#5618).
Nimbus FML ⛅️🔬🔭🔧
✨ What's New ✨
- Added a new Remote Settings client component (#5423).
- Added
toJSONObject()
andgetFeatures(featureId)
for Kotlin. This serializes the FML into aJSONObject
(#5574). - Added
FmlClient
, additional methods toFeatureManifest
, and Python UniFFI bindings (#5557).
What's fixed
- Updated the FML downloader plugin to correctly download the release artifacts from the GitHub release
FxA Client
⚠️ Breaking Changes ⚠️
- Changes
handlePushMessage
API so that it now returns exactly one event associated with the push message. (#5556)- This API does not attempt to retrieve any missing tabs.
- Users of this API can use it to display the notification, but should use
pollDeviceCommands
after to capture the commands.
Xcode
- Bumped Xcode version from 13.4.1 -> 14.3.1 (#5615)