Steps to reproduce
- Install old version of the app (before 4.1.0)
- Save some pages and let them download
- Install new app over it
- Launch the app and start migration
Expected results
Data is successfully migrated, and Home view shows suggestions based on the (migrated) saved pages.
Actual results
Home view is empty:
Dev Notes
If you try this right now, the assertions in WMFHomeViewController and WMFArticleListCollectionViewController will be triggered. This is due to the delay between viewDidAppear and loadMainUI caused by the data migration. There are a couple ways we can resolve this:
- Allow the tab root VCs to be reconfigured on the fly (i.e. Home, Saved, & Recent)
- Instantiate tab root VC's programmatically in the data migration callback
I vote for option 2 because it promotes immutability.