The Glean core native code is now shipped through GeckoView directly
(through its `-omni` packages).
For local tests we need a library matching the host-platform, which is
available in the glean-native package.
* Update Android Components version to 93.0.20210901143120.
* For #21043 - Integrate AC changes
* Fix breaking API changes of RestoreAction
Co-authored-by: Mugurell <Mugurell@users.noreply.github.com>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
This is to investigate the intermittent mockk class
generation/loading issues. Since we can not reproduce
locally and the failures are intermittent they could
be caused by us running unit tests in parallel.
This means no code will be generated by Kotlin Android Extensions for caching
views and also for @Parcelize annotated classes.
As recommended in the official documentation
https://developer.android.com/topic/libraries/view-binding/migration#gradle
we need to switch on using `kotlinx.parcelize.Parcelize` instead of
`import kotlinx.android.parcel.Parcelize`
For #17917 - Remove the `kotlin-android-extensions` plugin
This means no code will be generated by Kotlin Android Extensions for caching
views and also for @Parcelize annotated classes.
As recommended in the official documentation
https://developer.android.com/topic/libraries/view-binding/migration#gradle
we need to switch on using `kotlinx.parcelize.Parcelize` instead of
`import kotlinx.android.parcel.Parcelize`
We disabled the allowaccessmodification proguard option because it broke
functionality or crashed the app (I can't rememeber). As far as we know,
the R8 bug was fixed in the R8 bundled with the Android Gradle Plugin
v4.1. We're now on AGP v7.0.0-rc1 so we should be able to revert this
now.
This commit reverts the following commits:
Revert "Proguard/r8: Do not allow access modification."
This reverts commit 98bf27fdd4.
Revert "Dump `proguard-android-optimize.txt` into local configuration for later modification"
This reverts commit 88fe3fbf82.
Now that the Glean Dictionary (https://dictionary.telemetry.mozilla.org)
has hit production, our guidance is to move away from generating
metrics.md files. The Glean Dictionary is a better solution for this task
for a couple of reasons:
1. The Glean Dictionary contains a complete reference of all metrics
and pings sent by an application (not just those defined in the
application itself, as is the case with the markdown documentation)
2. The Glean Dictionary provides additional context and links beyond
what is provided by the documentation (for example, information on
how to access metric information via BigQuery or GLAM) as well as
annotations provided by data scientists in the course of analyzing data
(see, for example, the commentary section for:
https://dictionary.telemetry.mozilla.org/apps/fenix/metrics/metrics_search_count).
This should also reduce some of the churn/burden on people when
they submit PRs, as there is no longer any need to update metrics.md
as a part of them.
Instead of using a timestamp this will synchronize the Nightly version with the version
of Gecko / A-C. So when using 90.0.20210426143115 then the Nightly version will be
90.0a1 - similar to what Firefox desktop uses.
Removes the recyclerview-selection library and replaces it with the
SelectionHolder/SelectionInteractor with a Store.
This is an implementation that's similar to what we have in other UI
lists (library).
Add multi-select mode to the BrowserTabsAdapter. It has the
functionality to:
- Enable multi-select mode on long-press.
- Enable multi-select mode when changed by an external function.
- Only works for normal tabs (as we currently have it).
Co-authored-by: "codrut.topliceanu" <codrut.topliceanu@softvision.ro>
Upgrades to A-C 69.0.20201203202830 and addresses breaking changes:
- Upgrades androidx workmanager to 2.4.0 in line with A-C.
- RecordingDevicesNotificationFeature was removed
- SearchUseCases accept parent session ID instead of session itself
This PR builds on [AC##9024][1], and implements setting the Nimbus endpoints from [a secret set at build time][2].
For production use, this requires a secret named `nimbus_url` to be put into CI.
Note: Nimbus is currently behind a feature flag.
If developers wish to use a Nimbus server for local development, you can set the url by adding an entry into local.properties, e.g.:
```
nimbus.remote-settings.url=https://settings.stage.moz4ws.net
```
Without setting server, Nimbus will be able to function, except no experimental definitions will be fetched, and features under experiment will be configured as if not enrolled in the experiment.
[1]: https://github.com/mozilla-mobile/android-components/pull/9024
[2]: https://groups.google.com/a/mozilla.com/g/android-components-team/c/lAGVKQy8aiA/m/rY3uGAwhBAAJ