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

[feature] user function: prune old posts #1442

Open
nikkicoon opened this issue Feb 6, 2023 · 12 comments
Open

[feature] user function: prune old posts #1442

nikkicoon opened this issue Feb 6, 2023 · 12 comments
Labels
enhancement New feature or request future tech Powerful technology to be added in the future.

Comments

@nikkicoon
Copy link

Is your feature request related to a problem ?

I'd have to adjust mastopurge to a degree to be able to periodically batch delete posts from gts. It would be nicer to have this feature integrated.

Describe the solution you'd like.

  • in the admin/user panel, the user can set a boolean option for auto-deleting posts
  • auto-deleting posts can be defined with either what to exclude or what to include in a age/range (pinned posts, favorited posts, media posts, etc)

Describe alternatives you've considered.

None

Additional context.

No response

@nikkicoon nikkicoon added the enhancement New feature or request label Feb 6, 2023
@tsmethurst tsmethurst added the future tech Powerful technology to be added in the future. label Feb 12, 2023
@nikkicoon
Copy link
Author

nikkicoon commented Jul 1, 2023

As an intermediate solution and since the only Mastodon API specific tool I tried was too old for the API, what methods do exist at the moment to delete more than 1 posts at a time and federate that deletion?

@tsmethurst
Copy link
Contributor

what methods do exist at the moment to delete more than 1 posts at a time and federate that deletion

Nothing like that exists right now; you can only delete one post at a time currently. You could probably script something up using the API to iterate through your old posts and delete them, but eventually we should indeed just add this as a feature to GtS so everyone can use it :)

(Sorry for the huge delay in replying btw, didn't see this comment.)

@decentral1se
Copy link
Contributor

decentral1se commented Sep 10, 2023

Subscribed, thank you for opening @nikkicoon! V happy to see that this will land as a built-in feature at some point 🦩 I think I will try write up a script soon-ish to do some purging.

EDIT: Update is that I ran into #1135 and #2196 and got distracted and gave up. Another run at it coming One Day Soon ™️

@filipesmedeiros
Copy link

what methods do exist at the moment to delete more than 1 posts at a time and federate that deletion

Nothing like that exists right now; you can only delete one post at a time currently. You could probably script something up using the API to iterate through your old posts and delete them, but eventually we should indeed just add this as a feature to GtS so everyone can use it :)

(Sorry for the huge delay in replying btw, didn't see this comment.)

Thank you for the response! Would you want some help with getting this added? I know nothing about Go, but if it's something that's easy to add, I'd love to help

@marmulak
Copy link

I would like to vote for this as well. Mastodon calls this feature "automated post deletion". The reason why I think this is an ideal for GtS is:

  1. Privacy - helps users/admins manage their privacy by stopping people from delving too far back into the past
  2. Storage - GtS is meant for small servers/instances that may not have resources like limitless storage, so some blanket setting for this will help make the service perpetual

To me, this makes it an essential need of GoToSocial. I would, for example, set posts on my server to delete after 1 year. Maybe a more sophisticated implementation could apply this to all posts except pinned/starred posts.

Recently I have been reading about this feature online, and it seems most people agree that this is best implemented on the server side.

@decentral1se
Copy link
Contributor

blurp might fit your needs in the meantime 🙈

@Karmalakas
Copy link

Just spun up a GTS instance and one of the first things I missed is exactly this feature. I want to use my instance for two accounts - one would be normal and the other would be a bot account. I want this bot account posts older than 6 months to be deleted, like it's possible on Mastodon instances 😕

@kouya
Copy link

kouya commented Nov 2, 2024 via email

@Karmalakas
Copy link

Karmalakas commented Nov 2, 2024

@kouya , thanks 🙂 But I can wait. I mean it's not a must have feature just yet, but IMO it's a must have in a year or so 😄 Also, I'm running GTS on a TrueNAS Scale as a custom app, so I'm not sure how comfortable I'd be adding the script in a container. I'm not that familiar with Linux sysems yet 🙂

@kouya
Copy link

kouya commented Nov 2, 2024

Yeah fair enough it needs the sqlite3 command line client to figure out what posts to expire and cron or a systemd timer.

I feel like the botsin space shutdown brought a lot of attention to gts which is really cool. :3

@Karmalakas
Copy link

the botsin space shutdown brought a lot of attention to gts

That's exactly why I'm here 😅

@NyaaaWhatsUpDoc
Copy link
Member

before the end of the year there's some big internal changes to status processing / storage coming, in the form of status edits and tombstones (so we can maintain threading even when statuses in the chain get deleted). once those are done i plan to work on old status pruning, both old remote and old local ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request future tech Powerful technology to be added in the future.
Projects
None yet
Development

No branches or pull requests

8 participants