nextcloud / tasks

:white_check_mark: Tasks app for Nextcloud
https://apps.nextcloud.com/apps/tasks
GNU Affero General Public License v3.0
575 stars 100 forks source link

[Feature Request] Repeating tasks #34

Open revjtanton opened 7 years ago

revjtanton commented 7 years ago

Repeating tasks, like calendar items, would be a really useful feature. Right now I'm putting repeating tasks in the calendar (stuff like taking out the trash weekly) but really that'd be better as a repeating task in this app.

I'm not very familiar with the Nextcloud platform, but it looks pretty straight forward. I will fork this repo and try my hand at adding this feature myself. Between my unfamiliarity with the platform, and other projects, I may not ever get it done though. I'm posting the idea here in hopes that someone else who is more knowledgable about this project take up this cause.

jurgenhaas commented 7 years ago

I second that, recurring tasks would be really useful because I could then replace my GTD tool and bring everything into NextCloud tasks,

revjtanton commented 7 years ago

I've looked at doing this myself a little bit, and I think I have an idea on how this could function in-line with current Tasks functionality.

Currently a Task can span many days or months. The task has a progress bar. This is not similar to other task programs like Todoist or others where a task is simply due on a date, or recurring.

To create a repeating option for Nextcloud Tasks I suggest it act as a reminder for a task in progress. So you set your task start date/end date, then under a repeating or reminders tab (just like a calendar item) you set how you will be reminded (pop-up, email, etc) and then the interval (every 1 day, 1 month, etc--this is where it is different than Calendar and is a combination of the reminder and recurring tabs).

I'm not sure how this would work with third party items like DAVdroid/Tasks on Android (for example), but I think this type of recurring reminder would be complementary to the way Tasks is currently implemented in Nextcloud.

Perelandra0x309 commented 7 years ago

+1 for repeating tasks

ddanielww commented 7 years ago

I would also like this feature

xpilgrim commented 7 years ago

me also ;-)

schnups commented 7 years ago

yes, this would be awesome

durchflieger commented 7 years ago

I like it too

tschiu commented 7 years ago

This would be very helpful. Maybe a quick method would be to put a database table in place for repeating task info, then install a cron job to read that table and create the new entries in the app database table?

rnolty commented 7 years ago

+1

ghost commented 7 years ago

+100000

Trollwut commented 7 years ago

Hello! Are there any plans on implementing this feature? A deadline?

Love the whole software and this is the only feature that keeps me using another app for managing my shit. :)

SeaDude commented 7 years ago

I would love to see this feature as well. This would make things much easier for my family to track our activities. I'm willing to give $20 toward this feature if it would help.

Trollwut commented 7 years ago

@SeaDude at Bountysource you can pay a bounty for specific issues, so that developers get paid if they solve them.

Haven't used that platform for specific bounties (just to donate devs in general) and don't know if there's an open issues for repeating tasks. But I guess that would be where those 20 bucks could be heading to. :) https://www.bountysource.com/teams/nextcloud/issues

rsudev commented 6 years ago

An implementation of recurring tasks I had used before (in another app) just spawned the next occurrence, if the current one was marked as done. Currently I do this in a more manual fashion by just moving the entry to the next occurrence instead of recording it as done. Not sure if the implementation suggestion above provides the same level of information (see the next occurrence as a due entry in the task list). Good interworking with clients (DAVdroid/Tasks and Thunderbird/Tasks in my case) is of course quite crucial... And of course a big thanks for providing this app in the first place!

ghost commented 6 years ago

I am also in favor of repeating tasks. I wanted to add a few more thoughts.

Suppose I schedule a repeating task for every Monday. On Monday, when I look at my "Today" tasks, it should appear. If I mark it off as complete, it should disappear until next Monday, when it should reappear. I suspect there's wide consensus on that point.

If I don't do it on Monday, however, to my mind it's still outstanding, so on Tuesday it should still appear as an (over-)due task. There may be a few cases where people will want it to just disappear (e.g. if you didn't take out the garbage on Monday, there's no point in doing it on Tuesday), but those are probably few enough that just checking them off as done is sufficient. Perhaps an option is needed there, but I think it's probably low priority.

For tasks that are completed late, there's the question of when to reschedule them. In many cases, if it is scheduled for Monday, it should be rescheduled for next Monday regardless of when it has been completed. However, there are other cases where the interval is more important then the start date. Suppose I want to change the oil in my car every three months. I set up a task to start on January 1 and repeat every 3 months. Come April, though, I'm out of town and don't change the oil until April 15th. Some people will think the next oil change should be June 1, but others will want June 15 (because that's when the oil is 3 months old). Other scheduling apps handle this by allowing rescheduling to be on a date (1st of the month every 3rd months) or on an interval (every 3 months).

Anything that can be done for repeating tasks would be wonderful. The above is just to help raise the issues a developer may want to consider. If I complete the task on Tuesday, it should disappear until

DJCrashdummy commented 6 years ago

just a hint if some of you didn't know: (i had problems importing an calendar with recurring tasks and alarms as you can see in https://github.com/nextcloud/calendar/issues/777, but) syncing recurring tasks, ticking and modifying them in a client seem to work fine... but it's really a pity, that only the first task is displayed in nextcloud-tasks. - the only way for now is to don't tick these "master", because this will tick all it's "subtasks" in your clients. ...and to be on the safe side i also don't edit them within nextcloud to don't mess things up. :disappointed:

Dr-Cool commented 6 years ago

Just posted a $10 bounty at Bountysource for this feature. Will accept the claim if implementation of repeating tasks is compatible with Tasks (Astrid To-Do List Clone).

SkylightXD commented 6 years ago

+1

randyheydon commented 6 years ago

@MartinConsultingServicesInc I've been using etm up until now, and it handles what you describe in a simple way. Repeating tasks can have an "overdue" rule to select desired behaviour. It defaults to "keep", or can be set to "skip" or "restart". "Keep" has overdue tasks stay until complete, and future repetitions are not affected; "skip" has overdue tasks disappear, and future repetitions are not affected (like your garbage example); and "restart" has overdue tasks stay until complete, and further repetitions are scheduled based on the completion date (like your oil change example).

In my experience, these three options are sufficient to cover most any case I've encountered, and might be good inspiration for repeating tasks in Nextcloud.

995190 commented 6 years ago

Any update on this? It's the only thing currently missing that disables me from completely switching to Tasks with my work management :)

crazybadger commented 5 years ago

I was just about to add a feature request for this until I found this! Only just started playing with this in Nextcloud, but so far it looks really good. This was the first thing I found to be missing, as a long time OmniFocus user.

mrstegeman commented 5 years ago

This is actually already supported by the server. If you manage your task list with an external app, such as the Tasks app in macOS or Evolution on Linux, you can manage recurrence. There's just no way to do it through Nextcloud's UI.

crazybadger commented 5 years ago

What's the Tasks app in macOS?

mrstegeman commented 5 years ago

Sorry, it's called Reminders, not Tasks.

crazybadger commented 5 years ago

Ah, right. I didn't even think about that or know that I could sync it with Nextcloud. Unfortunately, recurring tasks is about all it's useful for as you can't nest tasks. Should mean recurrence wouldn't be too difficult to add into Nextcloud though?

thrdroom commented 5 years ago

Just posted a $10 bounty at Bountysource for this feature. Will accept the claim if implementation of repeating tasks is compatible with Tasks (Astrid To-Do List Clone).

same goes for me. Just added $15 to the bounty. I will accept the claim if implementation of repeating tasks is compatible with Thunderbird(Lightning) and Tasks (Astrid To-Do List Clone)

canufarm commented 5 years ago

This is actually already supported by the server. If you manage your task list with an external app, such as the Tasks app in macOS or Evolution on Linux, you can manage recurrence. There's just no way to do it through Nextcloud's UI.

If I test it with eM Client (Windows) and Nextcloud as caldav-server it really works, recurring tasks are transferred throught Nextcloud correctly.

But I did not find any Android app which also supports this. DAVdroid syncs, but neither aCalendar+ nor OpenTasks can handle these recurring tasks. Are there any solutions? Thanks.

netzwerch commented 5 years ago

But I did not find any Android app which also supports this. DAVdroid syncs, but neither aCalendar+ nor OpenTasks can handle these recurring tasks. Are there any solutions? Thanks.

OpenTasks has it in its beta channel https://github.com/dmfs/opentasks/issues/462 And I can confirm that it works for the Android App "Tasks" when using CalDav https://tasks.org/ https://f-droid.org/packages/org.tasks/

canufarm commented 5 years ago

And I can confirm that it works for the Android App "Tasks" when using CalDav https://tasks.org/ https://f-droid.org/packages/org.tasks/

Great, thanks! Tasks works. It's better than the aCalendar+ OpenTasks combination.

The only issues which remain are, task reminders set in Android/Tasks are not synced to eM Client (seems they in principle are not synced to Nextcloud) and when adding a new task on Android/Tasks after sync to eM Client the timezone is set to "Floating", no idea why.

PS: The "Floating" display in eM Client tasks start and end date also occurs when adding a task in Nextcloud-UI.

alensiljak commented 5 years ago

aCalendar+ with OpenTasks has always worked for me correctly. The recurrence was handled properly. The data was always synchronised across devices. In addition, it allows me to see the tasks with due dates on the calendar. So, statements like "it is better than aCalendar OpenTasks combination" are dubious at best.

thrdroom commented 5 years ago

So, statements like "it is better than aCalendar OpenTasks combination" are dubious at best.

Nope, not dubious at all. Tasks.org app is:

  1. Not in Beta-stadium
  2. More frequently updated than opentasks
  3. Don't needs 5 years to deliver recurring tasks!
  4. Looks better, has nicer UI and UX
  5. All in one app(no aCalendar(not in fdroid) app needed)
  6. FOSS(no proprietary aCalendar app needed)

Therefore Tasks.org app is superior to opentasks. If you use it, please dont forget to donate to the devs ;)

IpeTek commented 5 years ago

I would still love to see recurrence in NC Tasks, as well. Thunderbird is working slowly on my PC, nowadays.

WhoNeedszZz commented 5 years ago

Just seeing this and was looking for the same feature. I am okay with Tasks providing the recurrence input and then it being applied by the server, but what exactly is the issue with adding this option to the Nextcloud interface?

vozeldr commented 5 years ago

Would love to see this feature added.

corbin-auriti commented 5 years ago

This somewhat works for me, I can't modify the repeating on nextcloud, but when I set it too repeat in the android app Tasks.org, it saves and syncs via Nextcloud

TobiasDev commented 5 years ago

This somewhat works for me, I can't modify the repeating on nextcloud, but when I set it too repeat in the android app Tasks.org, it saves and syncs via Nextcloud

When you do that, what happens if you mark the task as done on the website? Does that stop the repeating?

mrstegeman commented 5 years ago

I tested this with the Reminders app on macOS. When marking as done on the website, it marks the entire task as completed and does not generate the repeated task.

netzwerch commented 5 years ago

I also tested with task.org android app. Creating and marking a repeating task as done within the android app works as expected. New tasks get scheduled as they are planned, syncing also lets the task update its due date in the nextcloud web interface. When marking it in the Nextcloud tasks web app it stays marked as completed. tasks.org detects the completion and bumps the tasks. But it stays as completed within the Nextcloud interface.

TobiasDev commented 5 years ago

Yeah, this was the kind of behavior I was suspecting would happen. :) I mean, it still works, as long as you mark it in the Android app rather than in the Web view (or Gnome Todo). I just need to keep that in mind when I use it, since I very often have the Todo list open on the side when doing work.

BeatLink commented 4 years ago

Any updates on this?

BeatLink commented 4 years ago

Its a shame that its not implemented in the nextcloud interface. Recurrence in tasks isnt a bolt on non standard feature, its an official part of the ical standard https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html . I dont understand why one of the oldest and most welcomed features hasnt been worked on in the UI yet.

raimund-schluessler commented 4 years ago

Its a shame that its not implemented in the nextcloud interface. Recurrence in tasks isnt a bolt on non standard feature, its an official part of the ical standard https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html . I dont understand why one of the oldest and most welcomed features hasnt been worked on in the UI yet.

Please feel free to send a PR. And since I expect none: Complaining about a feature not being implemented won't gift me more time to work on the app. After all, this is a free-time hobby project.

blacktemplar commented 4 years ago

Any news on this feature and its interopability with Thunderbird Lightning Tasks and the android app Tasks?

raimund-schluessler commented 4 years ago

Is anybody working on this? It's been YEARS. And it is pretty basic stuff for tasks to have repeatability.

No, this is not been worked on at the moment. So please feel free to start working and provide a PR. :)

This is an OpenSource app developed by people in their freetime (mainly). Every development happens in the open, if someone would work on a feature, there would be a PR or at least a branch where you can track the progress. If there is nothing like this, please refrain from asking every few days for the progress of feature xy. It distracts and annoys people and makes it more unlikely that someone is in the mood to start implementing it.

marbetschar commented 4 years ago

@raimund-schluessler thank you for staying calm and gentle 🏆️ - your patience made my day!

Again? Seriously?

timkrief commented 4 years ago

I started using the FLOSS android app tasks.org and it has repeating tasks. Changing a task with nextcloud tasks removes the repeating aspect of the task when syncing back to the app. So yes this would be really nice to have it here as well or at least in a first time, not to erase the data related to repeating tasks when syncing. (I understand the opensource aspect of the app, and I'm graceful of the work already being done, I'm not complaining or asking for work to be done, I'm just adding my experience report when syncing to an app that supports it :smile: )

timkrief commented 4 years ago

I might have a look see if I can make a PR that at least preserves the repeating aspect when syncing (I added a task to my todo list :rofl:)

raimund-schluessler commented 4 years ago

I might have a look see if I can make a PR that at least preserves the repeating aspect when syncing (I added a task to my todo list 🤣)

That would be very much appreciated. Repeating tasks is on the roadmap for Tasks v0.14.0, but I would like to update the right sidebar first and introduce tabs there https://github.com/nextcloud/tasks/issues/664, otherwise the sidebar will be to crowded with the additional elements for repeating tasks.

ghost commented 4 years ago

+1 (actually +1000) for repeating tasks. Many people find this an essential feature, myself included.

That said, I agree with @raimund-schluessler that the sidebar needs to be updated, and probably ahead of repeating tasks for repeats to work well.

Thanks to all of you who do development on this and on all things NextCloud. The entire project is awesome!! (No matter what else we wish it would do.)

akrea commented 4 years ago

Double that! Recurring tasks and an android app would be very helpful. Unfortunately I do not have time nor do I know the language to program such an app (although I would love to do that)...