Skip to content
This repository has been archived by the owner on Feb 20, 2023. It is now read-only.

For #19931: Add telemetry probes for recent bookmarks on home screen #20316

Conversation

eliserichards
Copy link

@eliserichards eliserichards commented Jul 9, 2021

For #19931
Waiting on https://mozilla-hub.atlassian.net/browse/DO-542

Pull Request checklist

  • Tests: This PR includes thorough tests or an explanation of why it does not
  • Screenshots: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
  • 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.
  • Data review

To download an APK when reviewing a PR:

  1. click on Show All Checks,
  2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
  3. click on the "Fenix - assemble" task, then click "Run Artifacts".
  4. the APK links should be on the left side of the screen, named for each CPU architecture

@eliserichards eliserichards requested review from a team as code owners July 9, 2021 19:56
@eliserichards eliserichards added the 🙅 waiting Issues that are blocked or has dependencies that are not ready label Jul 9, 2021
@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch from d0bf499 to 9ac17a8 Compare July 9, 2021 19:59
@codecov-commenter
Copy link

codecov-commenter commented Jul 9, 2021

Codecov Report

❗ No coverage uploaded for pull request base (main@6161dc6). Click here to learn what that means.
The diff coverage is n/a.

❗ Current head 55b1689 differs from pull request most recent head 185d319. Consider uploading reports for the commit 185d319 to get more accurate results
Impacted file tree graph

@@           Coverage Diff           @@
##             main   #20316   +/-   ##
=======================================
  Coverage        ?   37.90%           
  Complexity      ?     1678           
=======================================
  Files           ?      545           
  Lines           ?    22122           
  Branches        ?     3157           
=======================================
  Hits            ?     8385           
  Misses          ?    12839           
  Partials        ?      898           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6161dc6...185d319. Read the comment docs.

@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch from 9ac17a8 to 55b1689 Compare July 26, 2021 21:36
@eliserichards
Copy link
Author

Request for data collection review form

All questions are mandatory. You must receive review from a data steward peer on your responses to these questions before shipping new data collection.

  1. What questions will you answer with this data?


    • This data will help us understand how users are interacting with the new section on the Home Screen that shows their recently saved bookmarks.

  2. Why does Mozilla need to answer these questions? Are there benefits for users? Do we need this information to address product or business requirements?

    • We are building out the features on our Home Screen, and we need to know how useful this new section is for the users and how we can best utilize the real estate of the Home Screen. This data will help us establish a baseline to make product decisions as we build this feature and others on the Home Screen.

  3. What alternative methods did you consider to answer these questions? Why were they not sufficient?


    • There are no other alternatives.

  4. Can current instrumentation answer these questions?


    • No.

  5. List all proposed measurements and indicate the category of data collection for each measurement, using the Firefox data collection categories found on the Mozilla wiki.

    Note that the data steward reviewing your request will characterize your data collection based on the highest (and most sensitive) category.

Measurement Description Data Collection Category Tracking Bug #
Recent_bookmarks.bookmark_clicked: Metric, a counter of times a recently saved bookmark was clicked on the home screen. Category 2 - interaction data #20316
Recent_bookmarks.show_all_clicked: Metric, a counter of times that the "show all" button was clicked on the recently saved bookmarks section of the home screen. Category 2 - interaction data #20316
  1. Please provide a link to the documentation for this data collection which describes the ultimate data set in a public, complete, and accurate way.

  2. How long will this data be collected? Choose one of the following:

    • I want this data to be collected for 6 months initially (ending on February 1, 2021), with the option to renew at that point.

  3. What populations will you measure?

    • All channels, all locales, all countries

  4. If this data collection is default on, what is the opt-out mechanism for users?


    • Default Glean SDK opt-out mechanism.

  5. Please provide a general description of how you will analyze this data.


    • Glean and Amplitude.

  6. Where do you intend to share the results of your analysis?

    • 
Only on Glean, Amplitude, and with mobile teams.

  7. Is there a third-party tool (i.e. not Telemetry) that you are proposing to use for this data collection?


    • No third-party tools.

@eliserichards eliserichards requested a review from travis79 July 27, 2021 22:56
@eliserichards eliserichards added the needs:data-review PR is awaiting a data review label Jul 27, 2021
@eliserichards
Copy link
Author

Test failure:

TEST: test other tip
    [Robolectric] org.mozilla.fenix.components.tips.providers.MigrationTipProviderTest.test other tip: sdk=28; resources=BINARY
  FAILURE
io.mockk.MockKException: no answer found for: Settings(#492).getRecentBookmarkClickedCount()
	at io.mockk.impl.stub.MockKStub.defaultAnswer(MockKStub.kt:90)
	at io.mockk.impl.stub.MockKStub.answer(MockKStub.kt:42)
	at io.mockk.impl.recording.states.AnsweringState.call(AnsweringState.kt:16)
	at io.mockk.impl.recording.CommonCallRecorder.call(CommonCallRecorder.kt:53)
	at io.mockk.impl.stub.MockKStub.handleInvocation(MockKStub.kt:263)
	at io.mockk.impl.instantiation.JvmMockFactoryHelper$mockHandler$1.invocation(JvmMockFactoryHelper.kt:25)
	at io.mockk.proxy.jvm.advice.Interceptor.call(Interceptor.kt:20)
	at org.mozilla.fenix.utils.Settings.getRecentBookmarkClickedCount(Settings.kt:1098)
	at org.mozilla.fenix.FenixApplication.setStartupMetrics$app_debug(FenixApplication.kt:581)
	at org.mozilla.fenix.FenixApplicationTest.WHEN setStartupMetrics is called THEN sets some base metrics(FenixApplicationTest.kt:135)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	

@travis79
Copy link
Member

Request for data collection review form

All questions are mandatory. You must receive review from a data steward peer on your responses to these questions before shipping new data collection.

1. What questions will you answer with this data?
   
   
   * This data will help us understand how users are interacting with the new section on the Home Screen that shows their recently saved bookmarks.

2. Why does Mozilla need to answer these questions? Are there benefits for users? Do we need this information to address product or business requirements?
   
   * We are building out the features on our Home Screen, and we need to know how useful this new section is for the users and how we can best utilize the real estate of the Home Screen. This data will help us establish a baseline to make product decisions as we build this feature and others on the Home Screen.

3. What alternative methods did you consider to answer these questions? Why were they not sufficient?
   
   
   * There are no other alternatives.

4. Can current instrumentation answer these questions?
   
   
   * No.

5. List all proposed measurements and indicate the category of data collection for each measurement, using the Firefox data collection categories found on the Mozilla wiki.
   
   Note that the data steward reviewing your request will characterize your data collection based on the highest (and most sensitive) category.

Measurement Description Data Collection Category Tracking Bug #
Recent_bookmarks.bookmark_clicked: Metric, a counter of times a recently saved bookmark was clicked on the home screen. Category 2 - interaction data #20316
Recent_bookmarks.show_all_clicked: Metric, a counter of times that the "show all" button was clicked on the recently saved bookmarks section of the home screen. Category 2 - interaction data #20316

1. Please provide a link to the documentation for this data collection which describes the ultimate data set in a public, complete, and accurate way.
   
   * [https://dictionary.telemetry.mozilla.org/apps/fenix
     ](https://dictionary.telemetry.mozilla.org/apps/fenix%E2%80%A8)

2. How long will this data be collected? Choose one of the following:
   
   * I want this data to be collected for 6 months initially (ending on February 1, 2021), with the option to renew at that point.

3. What populations will you measure?
   
   * All channels, all locales, all countries

4. If this data collection is default on, what is the opt-out mechanism for users?
   
   
   * Default Glean SDK opt-out mechanism.

5. Please provide a general description of how you will analyze this data.
   
   
   * Glean and Amplitude.

6. Where do you intend to share the results of your analysis?
   
   * Only on Glean, Amplitude, and with mobile teams.

7. Is there a third-party tool (i.e. not Telemetry) that you are proposing to use for this data collection?
   
   
   * No third-party tools.

Data Review

  1. Is there or will there be documentation that describes the schema for the ultimate data set in a public, complete, and accurate way?

Yes, through the metrics.yaml file and the Glean Dictionary.

  1. Is there a control mechanism that allows the user to turn the data collection on and off?

Yes, through the "Send Usage Data" toggle in the application preferences.

  1. If the request is for permanent data collection, is there someone who will monitor the data over time?

N/A, collection is set to expire or be renewed in 6 months (2021-02-01).

  1. Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under?

Category 2, Interaction Data

  1. Is the data collection request for default-on or default-off?

Default-on

  1. Does the instrumentation include the addition of any new identifiers?

No

  1. Is the data collection covered by the existing Firefox privacy notice?

Yes

  1. Does the data collection use a third-party collection tool?

No

Result

data-review+

@travis79 travis79 removed the needs:data-review PR is awaiting a data review label Jul 28, 2021
@eliserichards eliserichards linked an issue Jul 29, 2021 that may be closed by this pull request
7 tasks
@eliserichards eliserichards added needs:review PRs that need to be reviewed and removed 🙅 waiting Issues that are blocked or has dependencies that are not ready labels Jul 29, 2021
@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch 3 times, most recently from b731a96 to 2ccfdb0 Compare July 29, 2021 19:30
@mergify
Copy link
Contributor

mergify bot commented Aug 2, 2021

This pull request has conflicts when rebasing. Could you fix it @eliserichards? 🙏

@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch 2 times, most recently from 2050e2d to df59b94 Compare August 6, 2021 18:27
@mergify
Copy link
Contributor

mergify bot commented Aug 9, 2021

This pull request has conflicts when rebasing. Could you fix it @eliserichards? 🙏

Copy link
Contributor

@rocketsroger rocketsroger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think with our recent findings working with the Data Science and the Glean team we should update this pr so:

  1. No need to create preferences to store user lifetime count. Just need to get the count since last app start with counters.
  2. Put these new probes in their own category.
  3. Create the objects in events.kt.

Thanks

Copy link
Contributor

@rocketsroger rocketsroger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll mark this as need changes since we want to use counters from now on. Thanks

@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch from df59b94 to 64a18f0 Compare August 19, 2021 22:51
rocketsroger
rocketsroger previously approved these changes Aug 19, 2021
Copy link
Contributor

@rocketsroger rocketsroger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚢

@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch 2 times, most recently from c7fe3dd to 6ca26a0 Compare August 23, 2021 19:10
@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch from 6ca26a0 to 8b31dba Compare August 23, 2021 19:22
rocketsroger
rocketsroger previously approved these changes Aug 23, 2021
@eliserichards
Copy link
Author

@Mergifyio rebase

@eliserichards eliserichards added pr:needs-landing-squashed PRs that are ready to land (squashed) [Will be merged by Mergify] and removed needs:review PRs that need to be reviewed labels Aug 23, 2021
@mergify
Copy link
Contributor

mergify bot commented Aug 23, 2021

Command rebase: success

Branch has been successfully rebased

MozillaNoah
MozillaNoah previously approved these changes Aug 23, 2021
@eliserichards
Copy link
Author

@Mergifyio rebase

@mergify
Copy link
Contributor

mergify bot commented Aug 23, 2021

Command rebase: success

Branch has been successfully rebased

@eliserichards
Copy link
Author

@Mergifyio rebase

Elise Richards added 3 commits August 24, 2021 17:08
Update tests to reflect new metrics

Add data review link for new metrics

Mock new settings for startup metrics tests

Update metrics

Add test for recent bookmark glean events
@mergify
Copy link
Contributor

mergify bot commented Aug 24, 2021

Command rebase: success

Branch has been successfully rebased

@eliserichards eliserichards force-pushed the 19931-recent-bookmarks-telemetry branch from 185d319 to 5365398 Compare August 24, 2021 17:08
@eliserichards eliserichards merged commit 4182502 into mozilla-mobile:main Aug 24, 2021
pkirakosyan pushed a commit to gexsi/user-agent-android that referenced this pull request Aug 27, 2021
…n home screen (mozilla-mobile#20316)

* Add telemetry probes for recent bookmarks on home screen. Tests for controller.

* Make the events into counters in the metrics ping

Update tests to reflect new metrics

Add data review link for new metrics

Mock new settings for startup metrics tests

Update metrics

Add test for recent bookmark glean events

* Recent bookmarks controller tests
pkirakosyan added a commit to gexsi/user-agent-android that referenced this pull request Sep 15, 2021
* Update Android Components version to 93.0.20210812143121.

* Update the description for an inactive tabs string

* Use header20 style on collections to match other home items. Add margin above collections. (mozilla-mobile#20633)

* No issue: move kotlin-allopen outside appVariants loop.

The kotlin-allopen plugin could be getting applied for each variant we
have in the app. With the changed code, it will only get applied once.

* Ship nightlies to Google Play twice a day

This was moved to once per day in https://bugzilla.mozilla.org/show_bug.cgi?id=1628413 when Google Play reviews were very slow. That hasn't been a problem for awhile, and the less frequent nightlies are causing delays getting new Android Components bumps shipped out.

* Filter out test target packages in Flank-x86 (mozilla-mobile#20841)

* Filter out test target packages in Flank-x86
* Ignore verifyRunBlockingAndStrictModeSuppresionCount

* Update Android Components version to 93.0.20210813143343. (mozilla-mobile#20839)

Co-authored-by: Ryan VanderMeulen <[email protected]>

* Close mozilla-mobile#20792: Fix intermittent test failures in QuickSettingsFragmentReducerTest

* Close mozilla-mobile#20797: Fix intermittent test failures in ShortcutsSuggestionProviderTest

* Close mozilla-mobile#20795: Speculative fix for intermittent test failures in HomeFragmentTest

The expectation is that replacing `return` with `answers` will compute
the return value for the extension function again in order to avoid the
error, "no answer found for: Settings".

* Close mozilla-mobile#20796: Fix intermittent test failure in TrackingProtectionExceptionsInteractorTest

* Close mozilla-mobile#15168: Remove intermittent failing test in ToolbarViewTest

This test seems to be hacking at the binding between Fenix and the
BrowserToolbar to simulate toolbar events passing to the Fenix
interactor.

This is rather clumsy test that relies on the magic working of mockk
instead of following a general unit testing strategy that would commonly
require the class to be re-written to allow for better testing instead.

It is far safer to remove this test since we are not guaranteeing
anything in it and instead we see intermittent failures that make us
lose more time.

So therefore.. 🔥

* Update Android Components version to 93.0.20210814143348.

* Update Android Components version to 93.0.20210815143147. (mozilla-mobile#20859)

* Use theming in debug screen.

* Remove duplicated line in TabsSettingsFragment

* Android Autofill: Use AppCompat theme for UnlockActivity.

* For mozilla-mobile#20764 separate learn more string

* Update TabSessionState.createdAt for inactive tabs debugging

* Close mozilla-mobile#20853: Fix intermittent failing test in HomeFragmentStoreTest

* For mozilla-mobile#19886 - Remove the tracking protection indicator

* For mozilla-mobile#19886 - Add navigation from quick settings to tracking protection panel

* For mozilla-mobile#19886 - Handle toggling tracking protection in quick settings

* For mozilla-mobile#19886 - Add right arrowheader to tracking protection navigators

* For mozilla-mobile#19886 - Add favicon to website info view

Co-authored-by: Arturo Mejia <[email protected]>

* For mozilla-mobile#19886 - Add connection sub-menu.

* For mozilla-mobile#19886 - Use the new "Details" text for navigating to ETP details

* For mozilla-mobile#19886 - Remove tracking protection overlay CFR

* For mozilla-mobile#19886 - Improve quick setting dialogs navigation

* For mozilla-mobile#19886 - Add a back navigation to the Global Quick Settings from the Tracking Protection dialog

* For mozilla-mobile#19886 fix ui tests

* For mozilla-mobile#19886 integrate view binding.

* Update Android Components version to 93.0.20210816143131.

* Close mozilla-mobile#20796: Additional fixes for intermittent failing test

Fixes for TrackingProtectionExceptionsInteractorTest to remove the lamba
mocking and test actual BrowserState changes instead (where possible).

* Import l10n.

* For mozilla-mobile#19886 use block color on disabled permissions

* Update Android Components version to 93.0.20210817143149. (mozilla-mobile#20891)

* For mozilla-mobile#17917: Use View binding in Onboarding Tests

* For mozilla-mobile#17917: Use View binding in Share views

* For mozilla-mobile#20824: use fast service loader for MainDispatcherFactory.

For details on the root cause, see the commit. We replaced the similar
proguard rules because:
- the key line was returning false instead of true
- the other line had the same outcome as the written code. I believe it
  was a micro-optimization. Since perf seems fine without it, let's
  remove it

I benchmarked this change on COLD MAIN first frame. We see an
improvement of 89ms:
- before: 1346ms
- after: 1257ms

* For mozilla-mobile#17917: Use View binding in tracking protection(2)

* Issue mozilla-mobile#20864: Speculative fix for HomeFragmentTest failures

* Update Android Components version

* metrics.yaml: Add data review URL for Android Autofill metrics

* For mozilla-mobile#20716 - Disables Intermittent failing UI test

* Issue mozilla-mobile#2783: Add snackbar to collection deletion

* Update Android Components version to 93.0.20210818190037.

* Closes mozilla-mobile#20901: Do not record viewTime observations when we do not have a set lastAccess

The bug here was that we'd try to record `now - 0` as a viewTime delta.
This isn't just an obviously wrong value to record, but it will also
overflow our storage - we'll end up with a value on disk that doesn't
fit into an i32, but HistoryMetadata.total_view_time is i32 in our Rust
struct. Once that happens, reads that touch this bad row will result in
an overflow and a crash.

* Restore unused string tab_collection_dialog_negative

* For mozilla-mobile#20890 when TP is off globally hide TP section on quick settings.

* Enable recording of history metadata for all builds

This allows recording part of history metadata to ride the trains.
The UI features are still guarded by the secret settings flag (or,
enabled on debug builds).

* Add event ping telemetry for the Baidu top site click

* For mozilla-mobile#17917: Use View binding in Login Exceptions

* For mozilla-mobile#17917 - Migrate `browser` from Kotlin synthetics to View Binding.

* For mozilla-mobile#17917 - Migrate `home` from Kotlin synthetics to View Binding.

* For mozilla-mobile#17917: Use View binding in tabs tray

* For mozilla-mobile#20919 quit the after removing a study.

* Update Android Components version to 93.0.20210820143116.

* Speculative fixes intermittent test in DeleteAndQuitTest

* Close mozilla-mobile#20945: Fix failing test in AccountSettingsInteractorTest

* For mozilla-mobile#20596 remove startup timeline probes

* Update Android Components version to 93.0.20210820190249.

* Update Android Components version to 93.0.20210822143123.

* For mozilla-mobile#20919 quite the app when turning on/off experiments

* Use armeabi-v7a version code for MozillaOnline builds

* For mozilla-mobile#20927: Replace icons with AC icons.

* For mozilla-mobile#20892 update connection icons in quick settings

* For mozilla-mobile#20586 - Basic Jetpack Compose implementation.

* For mozilla-mobile#20586 - Put everything behing a secret setting

Not ready for prime-time. Lot of work still to be done.

* For mozilla-mobile#17917: Use View binding in add-ons

* Update Android Components version to 93.0.20210823143136.

* Disable run-ui in build-contributor-pr.yml (mozilla-mobile#20981)

* Closes 20975: Run metadata cleanup after Megazord.init()

This ensures that we do not attempt places initialization before
Megazord.init() finishes, and that touching BrowserStore does not
kick-off places initialization (due to the `cleanup` call being a
side-effect of creating metadata middleware, used as part of the
BrowserStore).

Glean initialization happens before initialize megazord, and it touches
core.store BrowserStore instance, kicking-off places initialization on
an IO thread (due to the cleanup call), which raced megazord
initialization on the main thread.

App init sequence is a bit of a mine-field, so this patch takes the easy
way out and doesn't attempt to re-order initialization sequence. Also,
initializing places as a side-effect of touching BrowserStore was also,
clearly, a bug.

* For mozilla-mobile#20868, mozilla-mobile#18764: Update Tracking Protection UI tests

* For mozilla-mobile#20716: re-enables mainMenuInstallPWATest UI test

* For mozilla-mobile#20328 - Adds telemetry for recentlyClosed button
 ...from tabsTray, inactiveTabs section.

* For mozilla-mobile#17917 - Finish migrating all synthetics usages

* For mozilla-mobile#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`

For mozilla-mobile#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`

* For mozilla-mobile#17917 - Remove the Kotlin synthetics Lint detector

Since all usages of Kotlin synthetics are removed and no such code is generated
anymore there is no need to keep around this Detector anymore.

* For mozilla-mobile#20507 - Inactive tabs telemetry

Two new events are added:
- "inactive_tabs_expanded" for when the inactive tabs section is expanded
- "inactive_tabs_collapsed" for when the inactive tabs section is collapsed

For tracking when an inactive tab is opened / closed I've repurposed the
existing tabs tray telemetry (since the functionality uses the same code)
- tabs_tray.opened_existing_tab
- tabs_tray.closed_existing_tab
to support an extra "source" key indicating the feature from which a tab was
opened or closed. The current values for this new key are:
- "Tabs tray" for when a tab was opened/closed from tabs tray
- "Inactive tabs" for when a tab was openes/closed from the Inactive tabs
section of the tabs tray.

* For mozilla-mobile#19931: Add telemetry probes for recent bookmarks on home screen (mozilla-mobile#20316)

* Add telemetry probes for recent bookmarks on home screen. Tests for controller.

* Make the events into counters in the metrics ping

Update tests to reflect new metrics

Add data review link for new metrics

Mock new settings for startup metrics tests

Update metrics

Add test for recent bookmark glean events

* Recent bookmarks controller tests

* For mozilla-mobile#20871 mark strings for removal

* For mozilla-mobile#20919 add confirm dialog when turning on/off experiments

* Update Android Components version to 93.0.20210824190140.

* No issue: Fix workflow if statement in build-contributor-pr.yml (mozilla-mobile#20982)

* No issue: Update Flank to v21.08.1

Flank https://github.com/Flank/flank/releases/tag/v21.08.1 has the fix for avoiding crash one of their API calls that we hit a couple times.

* Update Android Components version to 93.0.20210824190140. (mozilla-mobile#21010)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* Update search metric expiration dates (mozilla-mobile#21016)

* Dedupe history metadata in groups based on url

* For mozilla-mobile#21002: added page main menu items tests

* Update Android Components version to 93.0.20210826143110.

* For mozilla-mobile#21035 - Refactor HistoryViewInteractor from HistoryView into HistoryInteractor

* Fixed build issue.

* Update Android Components version to 93.0.20210827143341.

* Update Android Components version to 93.0.20210828143405.

* Import l10n.

* Update Android Components version to 93.0.20210828190210.

* Update Android Components version to 93.0.20210829143149.

* Enable Android Autofill support in all build types.

* Upgrade from node 10 -> 12 to support upgraded browsertime toolchain (mozilla-mobile#21064)

* For mozilla-mobile#20702: fix tests flakiness

* Update Android Components version to 93.0.20210830143255. (mozilla-mobile#21081)

* For mozilla-mobile#21002 update and add missing tabs setting validations

* Add tint to settings icon on Tracking protection panel

* Update Android Components version to 93.0.20210830220733.

* For mozilla-mobile#21037 - Add a delete history menu item

This removes the existing "Delete history" button in the History in favour of a menu item

* Renew probes set to expire in October

* Renew probes set to expire in September

* Remove master password telemetry.

* Remove download notification telemetry.

* Remove downloads misc telemetry.

* Remove downloads management telemetry

* Remove about page telemetry.

* Remove total uri count telemetry

* Remove find in page telemetry

* Remove open links in private tab telemetry

* Remove enable private search suggestions telemetry

* Remove tip telemetry

* Remove private browsing mode telemetry

* Fix data-review listed for default_browser_changed, toolbar_menu_visible, and toolbar_menu_clicked

* Remove private browsing shortcut telemetry

* Remove user specified search engine telemetry

* Remove search suggestions in private telemetry

* Remove banner open in app telemetry

* Include data review for renewed metrics

* For mozilla-mobile#21078 - Remove unused creditCardsFeature feature flag

* For mozilla-mobile#19166: Increases tab_tray_list bottom padding

... to fit snackbar and FAB

* Do not run unit tests in parallel

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.

* Update Android Components version (mozilla-mobile#21109)

* Update Android Components version to 93.0.20210901143120.

* For mozilla-mobile#21043 - Integrate AC changes

* Fix breaking API changes of RestoreAction

Co-authored-by: Mugurell <[email protected]>
Co-authored-by: Christian Sadilek <[email protected]>

* For mozilla-mobile#18727: Exit PiP when launched externally with Intents

* Force rebuild of Docker image.

* Print Java version in test tasks.

* Import l10n.

* Rollback Flank to v21.08.1 (mozilla-mobile#21123)

* Update Android Components version to 93.0.20210901190054.

* Add missing androidx.lifecycle dependencies

* Remove mocked lambdas from AccountSettingsInteractorTest

* For 20892 Update connection icons in address bar

* Import l10n.

* Update Android Components version to 93.0.20210903143410.

* Import l10n.

* Update Android Components version to 93.0.20210903190252.

* Import l10n.

* Update Android Components version to 93.0.20210905143045.

* Import l10n.

* Update Android Components version to 93.0.20210906143419.

* Import l10n.

* Update Android Components version to 93.0.20210907143236.

* Closes mozilla-mobile#21128: remove measure_start_up.py.

This script was moved to the perf-tools repository for easy to access
from other perf tools & to be accessible for multiple apps:
    https://github.com/mozilla-mobile/perf-tools

* Issue mozilla-mobile#18711: Telemetry for credit card autofill

* Update Android Components version to 94.0.20210907172517.

* For mozilla-mobile#21138: re-enable excessive resource use test.

This test wasn't running in CI
mozilla-mobile#20386 so we changed the
CI configuration so that it will. However, the test was then failing so
this is the revision that unignores the test.

I wonder if componentInit count is useful - it seems like it'd cause
more false positives than not - but I figure we can leave it in and see
how it goes.

* For mozilla-mobile#21138: change EXPECTED_RUNBLOCKING to range.

Compared with my local runs, CI sees +1 runBlockingIncrement calls so seems to
take other code paths. As such, we search for a range of rather than a single
value. The main downside I can think of is this could make the test trickier to
debug but we can wait and see if that's a problem in practice before taking
action on it.

* Set version to 94.0.0

* Dont clip bounds on recently saved bookmarks

* For mozilla-mobile#20881 print if the build is a MozillaOnline

* Issue mozilla-mobile#21184: Update artifacts format

* Update Android Components version to 94.0.20210908143400.

* Issue mozilla-mobile#21140 - Updated recent tab logic to show media tab and second-to-last tab, if the media tab was the last active tab. (mozilla-mobile#21141)

* Issue mozilla-mobile#21140 - Updated recent tab logic to show media tab and second-to-last tab, if the media tab was the last active tab.

* Fixed RecentTabsListFeatureTest unit test

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* For mozilla-mobile#20892 update connection panel strings

* For mozilla-mobile#21183: remove component init check from excessive resource test.

This check doesn't seem high value because initializing a component
only indicates a performance problem if it's slow, which is not most
components, so it's likely to result in many false positives. To fix
the intermittent, we won't lose much if we remove it.

* For mozilla-mobile#21183: remove lazyMonitored wrapper functionality.

We're not using the functionality so there's no sense in doing the work.
However, we keep the wrapper: see the code comments for details.

* For mozilla-mobile#21183: remove view hierarchy depth check from excessive resource test.

This doesn't seem to be a high value test: increasing the view hierarchy
depth will only result in a performance problem on low end devices
if there is enough content on the new layer to cause the traversal to
take longer. It's more likely to result in a hard-to-workaround false
positive so we can remove it, like component init count.

* For mozilla-mobile#19947: manually add login (mozilla-mobile#21199)

* [WIP] New Layout for adding login and 'add login' button in 'SavedLoginsListView' to launch it.
Fixed bindings.

* [WIP] Removed "reveal password" button

* [WIP] Added interactor for the add login screen

* [WIP] Trying to check for duplicates

* [WIP] Renaming "addNew..." with "add..."

* [WIP] Check for duplicates

* [WIP] Fixes after merge

* Cleaning up the layout and making edit text for hostname selectable

* Error handling on add login screen. Tests for interactors and controllers

Co-authored-by: Vitaly V. Pinchuk <[email protected]>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* For mozilla-mobile#21095 allow users to configure their home screen.

* Update Android Components version to 94.0.20210909143340. (mozilla-mobile#21214)

Co-authored-by: Ryan VanderMeulen <[email protected]>

* Fix TaskCluster badge in README

* For mozilla-mobile#6968: Use close instead of read to close the response stream.

* Issue mozilla-mobile#20637 - Fixed bug causing the tabs tray to scroll to the wrong tab when opened

* Handle breaking changes from a-s 83.0.0 (mozilla-mobile#21215)

* Update Android Components version to 94.0.20210910083224.

* For mozilla-mobile#21133 fix openMainMenuSyncItemTest UI test

* Update Android Components version to 94.0.20210910143108.

* Import l10n.

* Update Android Components version to 94.0.20210910190342.

* Update Android Components version to 94.0.20210912143220.

* For mozilla-mobile#21211 hide the ETP in custom tabs.

* For mozilla-mobile#21226 only show the "Customize Home" menu on home screen.

* Update Android Components version to 94.0.20210913143315.

* For mozilla-mobile#18629: add support for SmartBlock exceptions

* Improve coverage for addPrivateBrowsingShortcut Ui test

* For mozilla-mobile#20634: remove some unused color resources

Co-authored-by: MickeyMoz <[email protected]>
Co-authored-by: Jonathan Almeida <[email protected]>
Co-authored-by: Elise Richards <[email protected]>
Co-authored-by: Michael Comella <[email protected]>
Co-authored-by: Ben Hearsum <[email protected]>
Co-authored-by: Aaron Train <[email protected]>
Co-authored-by: Mickey Moz <[email protected]>
Co-authored-by: Ryan VanderMeulen <[email protected]>
Co-authored-by: Sebastian Kaspari <[email protected]>
Co-authored-by: Arturo Mejia <[email protected]>
Co-authored-by: Gabriel Luong <[email protected]>
Co-authored-by: Mozilla L10n Automation Bot <[email protected]>
Co-authored-by: codrut.topliceanu <[email protected]>
Co-authored-by: Roger Yang <[email protected]>
Co-authored-by: Grisha Kruglov <[email protected]>
Co-authored-by: rxu <[email protected]>
Co-authored-by: Mugurell <[email protected]>
Co-authored-by: Rohan Maity <[email protected]>
Co-authored-by: mcarare <[email protected]>
Co-authored-by: Oana Horvath <[email protected]>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Christian Sadilek <[email protected]>
Co-authored-by: Joel Maher <[email protected]>
Co-authored-by: AndiAJ <[email protected]>
Co-authored-by: czlucius <[email protected]>
Co-authored-by: Alex Ionescu <[email protected]>
Co-authored-by: Noah Bond <[email protected]>
Co-authored-by: Vitaly V. Pinchuk <[email protected]>
Co-authored-by: Ryan VanderMeulen <[email protected]>
Co-authored-by: Noah Bond <[email protected]>
Co-authored-by: bendk <[email protected]>
Co-authored-by: Rohan Maity <[email protected]>
pkirakosyan pushed a commit to gexsi/user-agent-android that referenced this pull request Sep 15, 2021
…n home screen (mozilla-mobile#20316)

* Add telemetry probes for recent bookmarks on home screen. Tests for controller.

* Make the events into counters in the metrics ping

Update tests to reflect new metrics

Add data review link for new metrics

Mock new settings for startup metrics tests

Update metrics

Add test for recent bookmark glean events

* Recent bookmarks controller tests
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
pr:needs-landing-squashed PRs that are ready to land (squashed) [Will be merged by Mergify]
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Telemetry] Add telemetry for Homescreen Recently Added Bookmarked Items
5 participants