-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Re-enable Nimbus with Off the main thread I/O and non-blocking networking #17684
Conversation
a11fa07
to
9f6234f
Compare
#17143 is fixed by way of SDK-161 and mozilla/nimbus-sdk#77 and extra try/catch protection around Nimbus setup. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
@@ -8,17 +8,14 @@ import android.app.Application | |||
import android.app.PendingIntent | |||
import android.content.Context | |||
import android.content.Intent | |||
import android.net.Uri | |||
import android.os.StrictMode | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: blank line
6302ee3
to
d36e60e
Compare
This pull request has conflicts when rebasing. Could you fix it @jhugman? 🙏 |
d36e60e
to
5b028cd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We did a few rounds of manual testing, simulating slow networks and no network connection at all. Everything seems fine now :).
At this point we can land and should monitor Sentry and perf. results.
5b028cd
to
3b4f83c
Compare
Fixes SDK-152.
In an effort to fix SDK-157 this PR brings together:
updateExperiments
into a slow networkfetch
and a fastapply
phase to re-calculate enrollments which writes to the database.fetch
calls and calls that mutate the internal state of Nimbus to two separate coroutine scopes.Furthermore, this PR also: moves setup of the Nimbus object into its own file; starts using the new
fetch
andapply
methods, and improves error resilience.Once all of this lands, this fixes #17086. Indirectly, it fixes #17143.
Pull Request checklist
[ ] Screenshots: This PR includes screenshots or GIFs of the changes made or an explanation of why it does notHas no UI[ ] Accessibility: The code in this PR follows accessibility best practices or does not include any user facing features. In addition, it includes a screenshot of a successful accessibility scan to ensure no new defects are added to the product.Has no UI.To download an APK when reviewing a PR: