Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Server deleted messages appear on Tusky Android app #4755

Open
jmeasow opened this issue Nov 10, 2024 · 3 comments
Open

Server deleted messages appear on Tusky Android app #4755

jmeasow opened this issue Nov 10, 2024 · 3 comments
Labels

Comments

@jmeasow
Copy link

jmeasow commented Nov 10, 2024

Detailed description

Messages which are deleted on server (using mastodon web interface) are not deleted on Android app.

This is an issue if 'auto deletion' is enabled in the account. I enabled auto deletion (to delete posts older than a week) in my account using web interface, and even though the messages are gone from the web interface, I can still see them on Tusky. Clearing cache doesn't have any effect.

Steps to reproduce the problem

  1. Create a message using Mastodon web interface (I used mastodon.online)
  2. Refresh messages on Tusky. The message which was created using website appears
  3. Delete the message using Mastodon web interface
  4. Refresh messages on Tusky. The deleted message still appears. Tried clearing cache, but no effect.

Debug information

Tusky 26.2
Device: Motorola moto g play (2021)
Android version: 11
SDK version: 30
Version: 4.4.0-nightly-2024-11-06

@jmeasow jmeasow added the bug label Nov 10, 2024
@connyduck
Copy link
Collaborator

Hmm yes but this kinda hard to fix because we can't recheck all the posts all the time but we want to cache posts for better offline behavior.

Some ideas how this could still be improved:

  • When opening a post in detail view and it returns 404 we should delete it from the cache.
  • We could split the database into an important part (logged-in accounts) and a non-important one (stuff like the post cache). Then we could put the non-important database into the apps cache directory so it can be cleared via system settings.
  • Have some in app way to force a refresh of everything

In the meantime you can change e.g. the setting to filter replies out of the home timeline, that will force a full reload of the home timeline. Changing any of the notification filters will force a reload of the notifications.

@jmeasow
Copy link
Author

jmeasow commented Nov 11, 2024

I don't know the code base but at the application launch time, if there is some way to ask the server 'what changed in the database between last app exit time and now for this user', it is possible to get the difference. This works for new messages, but it should work for deleted messages too.

For live app behavior, when I post something in the web interface, the server immediately notifies the app (I guess) and it appears in the app. Why this same mechanism is not working when something is deleted on the web interface?

@connyduck
Copy link
Collaborator

some way to ask the server 'what changed in the database between last app exit time and now for this user'

that would be cool, but it doesn't exist

For live app behavior, when I post something in the web interface, the server immediately notifies the app (I guess) and it appears in the app. Why this same mechanism is not working when something is deleted on the web interface?

Ah yes implementing the streaming api would help as well. But it only works when the app is active.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants