Skip to content

[TW-1628] Modifying a due time of a recurrent task modifies all children automatically #1652

Description

@taskwarrior

Tomas Babej on 2015-07-02T15:32:33Z says:

If one modifies a (parent) recurrent task, the modification is automatically propagated to all the children, without prompting the user for confirmation.

I can see why this is usually desired, however, if one changes the due date, this will reschedule all the children task to the same date, which is almost certainly not desired.

$ habit all Brush before
Using alternate .taskrc file /home/tbabej/.habitrc

 ID St UUID     Age D Project R Due        Description                
 51 P  06e06620 9h    Health  R 2015-07-03 Brush teeth before sleeping
 27 P  503065eb 1d    Health  R 2015-07-02 Brush teeth before sleeping
 26 P  ecf6c57f 1d    Health  R 2015-07-01 Brush teeth before sleeping
 25 R  da4c7f0d 1d    Health  R 2015-07-01 Brush teeth before sleeping

4 tasks
There are local changes.  Sync required.

$ habit 25 info
Using alternate .taskrc file /home/tbabej/.habitrc

Name          Value                                              
ID            25
Description   Brush teeth before sleeping                        
Status        Recurring
Project       Health                                             
Recurrence    daily
Mask          ---                                                
Entered       2015-07-01 11:59:07 (1 day)
Due           2015-07-01 00:00:00                                
Last modified 2015-07-02 07:56:25 (9 hours)
Virtual tags  MONTH OVERDUE PARENT UNBLOCKED WEEK YEAR YESTERDAY 
UUID          da4c7f0d-17a7-40b3-8eb8-8ef48fb44e47
Urgency       10.6                                               

    project      1 *    1 =      1
    due      0.799 *   12 =   9.59
    age      0.003 *    2 =  0.005
* -----
                              10.6

Date                Modification                    
2015-07-01 11:59:17 Mask set to '--'.
2015-07-02 07:56:25 Mask changed from '--' to '---'.

$ habit 25 mod due:2015-07-01+22h
Modifying task 25 'Brush teeth before sleeping'.
Modifying recurring task ecf6c57f-feac-43a0-ad93-87348ecf01b0 'Brush teeth before sleeping'.
Modifying recurring task 503065eb-2a66-47b5-b6f5-4183f7e468ab 'Brush teeth before sleeping'.
Modifying recurring task 06e06620-2cd1-46f9-915f-fa9c3d5c5dd4 'Brush teeth before sleeping'.
Modified 4 tasks.
Using alternate .taskrc file /home/tbabej/.habitrc
Project 'Health' is 0% complete (3 of 3 tasks remaining).

$ habit all Brush before
Using alternate .taskrc file /home/tbabej/.habitrc

 ID St UUID     Age D Project R Due        Description                
 51 P  06e06620 9h    Health  R 2015-07-01 Brush teeth before sleeping
 27 P  503065eb 1d    Health  R 2015-07-01 Brush teeth before sleeping
 26 P  ecf6c57f 1d    Health  R 2015-07-01 Brush teeth before sleeping
 25 R  da4c7f0d 1d    Health  R 2015-07-01 Brush teeth before sleeping

4 tasks
There are local changes.  Sync required.

The 'due' attribute should preserve the 'shift' intervals between the parent task and the pending child tasks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    topic:recurrenceRecurrence-related issuestype:bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions