Page MenuHomePhabricator

Clean out MobileViewToMobileHTMLMigrationController
Closed, ResolvedPublic

Description

MobileViewToMobileHTMLMigrationController is one of our primary sources of hangs, according to Xcode Organizer.

This code was meant to enable users updating from pre-PCS to post-PCS to be able to launch their app while offline and still read their saved articles. Since PCS has been out for years now, it may be causing more harm than good.

Faked upgrade test

  1. Run a pre-PCS build with saved articles on it (I have pushed a test one up to Wikipedia Experimental, version 6.5.1 (21)). Since the mobileview article endpoint is gone, this build has saved some articles from a faked out test response, which should be enough to test this task.
  2. Disable device internet connection. Go to app Settings > Clear cache, then install new app version (Wikipedia Experimental version 7.3.0 (22)) with this fix in it.
  3. Launch while offline. Confirm list of saved articles remains, but they will probably not load now that the migration code is removed.
    • This is okay, as the next two steps illustrate that this will just be a fleeting state for users.
  4. Re-enable internet connection. Confirm you can revisit articles and they load. Wait until "Article queued to be downloaded" labels disappear, indicating that all articles have saved for offline.
  5. Disable internet connection again. Clear cache again via Settings. Relaunch while offline. Confirm you can revisit saved articles and they load.

Test steps on main build

Just general regression testing in Saved Articles in the main Wikipedia TestFlight build (version 7.3.1, white icon) would be good.

Event Timeline

Tsevener updated the task description. (Show Details)

When this goes out we should include in the release notes that they need to launch the app after the update to resync saved articles if they are updating from 6.5.1

Fix is in 7.3.1.

Tsevener updated the task description. (Show Details)
ABorbaWMF subscribed.

Testing on 7.3.1 (2297)

Moving to Blocked or Waiting for now, due to this odd behavior while testing delete.

Steps To Reproduce:

  1. Navigate to Saved
  2. Tap All Articles
  3. Delete (unsave) articles either by swiping the article RTL and tapping delete, or by tapping Edit, choosing multiple articles, and tapping Unsave
  4. Pull down on the articles to refresh

At this point, the newly deleted articles reappear for a few seconds.

IMG_5290.PNG (2×1 px, 1 MB)

Deleted 1st article, then pulled down to refresh
IMG_5291.PNG (2×1 px, 1 MB)

@ABorbaWMF thanks for catching! @Seddon mentioned this bug to me recently, he may have a task he could point you to. Can you let me know if this bug appears in the current App Store version as well? Just so we can be sure it isn't a new regression caused by the 7.3.1 tasks.

@Tsevener, yes, I remember seeing something like that previously. It seems unrelated to this change since it is occurring on the app version on the store now. I'll move this ticket.

The failure path might be different but the end result is very similar to this ticket: https://phabricator.wikimedia.org/T340194

JTannerWMF claimed this task.