pocket-casts-ios
pocket-casts-ios copied to clipboard
Filters: episodes from unsubscribed podcasts added to the Unplayed filter
Initially reported in 5201571-zen and continued discussion on Slack: p1652147666837189-slack-C02A333D8LQ
This is the second time now I’ve launched the app and noticed a feed that I’m not subscribed to is populating one of my filters. The podcast is called Prestige TV and it’s showing up in my Unplayed filter. I’m not able to interact with any of the episodes in the filter list, and last time this happened I had to search for the podcast from Discover -> subscribe -> unsubscribe to clear the episodes out of my filter.
On May 12, it happened again but added other different podcast episodes to the filter:
https://user-images.githubusercontent.com/40906847/167990654-0793c81e-01ab-4e4b-aae2-e6eab73c6c67.MOV
App Version: 7.20 Device: iPhone14,2 OS: 15.5
Aditional info from Russell:
I'm not really sure what would cause this, but the behaviour leads me to believe that:
- A podcast was deleted off the local device, however for some reason the episodes for it remained
- These would only be picked up in a filter, because that's a query on the episodes table and nothing else
- Brady is unable to tap any episodes, because when he does the app tries to load the podcast for them, and there isn't one
The next step I think would be to manually simulate this by running a query to just delete a podcast from the database without clearing the episodes. Once we know the behaviour is identical we could try to figure out what caused it
The above seems to be confirmed in the code. Podcasts are removed from a filter query by doing a NOT IN
operation, meaning if they aren't on the device but the episodes the episodes would still appear:
let unsubscribedUuids = DataManager.sharedManager.allUnsubscribedPodcastUuids()
if unsubscribedUuids.count > 0 {
if haveStartedWhere { queryString += "AND " }
queryString += " podcastUuid NOT IN ("