Paperback-iOS / app

Repository to host app releases, issues, and feature requests for Paperback
https://paperback.moe/
663 stars 20 forks source link

[BUG] Incognito mode is useless; app permanently stores all your data in default.realms anyway #788

Closed yetiam-on-git closed 1 year ago

yetiam-on-git commented 1 year ago

Describe the bug As I was migrating from 0.6 to 0.8, I ended up with broken chapters in my Downloads Manager. It's a source issue, so that's not your problem to fix. I requested a feature to be able to cancel queued downloads in the Download Manager #772 (as the name would suggest). With no response to my request and a broken queue, I decided to figure it out myself. That wasn't easy, but that's not the issue, either. I opened the default.realm file from iTunes File Sharing in Realm Studio, a third-party PC application, to alter the download queue data.

Instantly, I discovered a big, fat bug: the Paperback app's "Incognito mode" does absolutely nothing to prevent every bit of your data from being permanently recorded. Every title you glance at (you don't even have to open it) is permanently logged and timestamped in the REALM file. The only way to delete these records is to erase the app, or do what I did and hunt them down yourself. I had records of more than 150,000 different ChapterObjects with just a few months of use, most of which I never even touched. Deleting sources doesn't help, either. Even if the data doesn't go anywhere, I'm uncomfortable with the fact that it's been stored in the first place. I've had Incognito mode on since day 1.

At this point, it would be better to have no "Incognito" function at all than to mislead the user into thinking their usage records are in any way private. Regardless of whether you correct the Incognito mode in a future update, I recommend adding 1) a privacy feature within the app to completely erase certain categories of stored data, 2) a privacy feature to automatically erase records older than 30 days, and 3) automatically (with opt-out) erase all data from a specific extension when it is uninstalled.

To Reproduce Access the default.realm file with File Sharing and Realm Studio after regular use of the app (with Incognito enabled). On the back end, you probably have a more direct way to access these records.

Expected behaviour Don't store my reading history, and definitely don't store the history of chapters I've never even read.

App Version 0.8.3-r2

FaizanDurrani commented 1 year ago

As discussed in the Discord Server, the purpose of incognito mode was to simply hide the titles from History tab, the data is still present (as evident by the progress being saved in chapter list). Regardless I do understand that it is a bit misleading when compared to, say, Chrome's incognito mode, hence why I've renamed the option and provided a description of what it does.

github-actions[bot] commented 1 month ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.