Purging completed tasks automatically / in bulk
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 36.9k
- Forks
- 5.2k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 713
Description
How to use GitHub
- Please use the 👍 reaction to show that you are interested into the same feature.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Is your feature request related to a problem? Please describe.
Using the tasks app it's very easy to accumulate many completed tasks. When using external tasks applications (GNOME Tasks/Endeavour, Outlook CalDav Sync) , all of these completed tasks get synced and it causes performance issues and in some cases can make external CalDav task apps almost unusable.
https://github.com/nextcloud/tasks/issues/2309
https://github.com/nextcloud/tasks/issues/2125
https://help.nextcloud.com/t/mass-editing-deleting-tasks/26070
Describe the solution you'd like
A mechanism in server config to allow for deleting completed tasks after an interval, that could be ran with Nextcloud's other scheduled cron jobs.
Describe alternatives you've considered
I can seem to go into each individual completed task and delete it, but I don't seem to have a mechanism to delete them batches. I have over 1000 completed tasks so this could easily take hours to delete the in the web UI, and just attempting to load them takes several minutes and freezes my browser tab. I could also delete them directly from the database but this would raise the possibility of breakage/data loss.
Additional context
Per the developer of the tasks app, this is something that would need to be done server-side (while the tasks app is client-side), so I'm creating the issue here instead of the tasks app.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the server-side task handling and the scheduled cron job mechanisms mentioned in the request. Determine where a configurable completion-retention interval could be integrated and how bulk deletion should avoid the performance and data-loss concerns described. Done means completed tasks are automatically purged after the configured interval without disrupting synchronization or other task data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100