emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] please read: bug when marking tasks done


From: Bernt Hansen
Subject: Re: [O] please read: bug when marking tasks done
Date: Mon, 07 Jan 2019 09:52:13 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

Nicolas Goaziou <address@hidden> writes:

> Hello,
>
> cesar mena <address@hidden> writes:
>
>> hello everyone,
>>
>> in the maint branch, marking a repeatable task as DONE causes the
>> "Rescheduled from" dates to be lost in the :LOGBOOK:.
>>
>> in the below diff all of the from dates are rewritten with the new
>> scheduled date:
>>
>>   -      SCHEDULED: <2018-12-04 Tue .+1m>
>>   +      SCHEDULED: <2019-02-05 Tue .+1m>
>>          :PROPERTIES:
>>   -      :LAST_REPEAT: [2018-08-08 Wed 07:40]
>>   +      :LAST_REPEAT: [2019-01-05 Sat 18:47]
>>          :END:
>>          :LOGBOOK:
>>   -      - Rescheduled from "[2018-11-28 Wed .+1m]" on [2018-11-28 Wed 08:35]
>>   -      - Rescheduled from "[2018-11-25 Sun .+1m]" on [2018-11-25 Sun 09:17]
>>   -      - Rescheduled from "[2018-11-20 Tue .+1m]" on [2018-11-22 Thu 10:03]
>>   -      - Rescheduled from "[2018-11-13 Tue .+1m]" on [2018-11-17 Sat 09:48]
>>   -      - Rescheduled from "[2018-11-06 Tue .+1m]" on [2018-11-08 Thu 07:02]
>>   -      - Rescheduled from "[2018-10-28 Sun .+1m]" on [2018-10-30 Tue 16:22]
>>   -      - Rescheduled from "[2018-10-25 Thu .+1m]" on [2018-10-25 Thu 07:34]
>>   -      - Rescheduled from "[2018-10-19 Fri .+1m]" on [2018-10-19 Fri 07:48]
>>   -      - Rescheduled from "[2018-10-16 Tue .+1m]" on [2018-10-16 Tue 16:21]
>>   -      - Rescheduled from "[2018-10-11 Thu .+1m]" on [2018-10-14 Sun 10:31]
>>   -      - Rescheduled from "[2018-10-07 Sun .+1m]" on [2018-10-08 Mon 08:48]
>>   -      - Rescheduled from "[2018-09-27 Thu .+1m]" on [2018-09-29 Sat 18:50]
>>   -      - Rescheduled from "[2018-09-20 Thu .+1m]" on [2018-09-20 Thu 09:50]
>>   -      - Rescheduled from "[2018-09-08 Sat .+1m]" on [2018-09-14 Fri 07:10]
>>   +      - State "DONE"       from "TODO"       [2019-01-05 Sat 18:47]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-11-28 Wed 08:35]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-11-25 Sun 09:17]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-11-22 Thu 10:03]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-11-17 Sat 09:48]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-11-08 Thu 07:02]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-10-30 Tue 16:22]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-10-25 Thu 07:34]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-10-19 Fri 07:48]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-10-16 Tue 16:21]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-10-14 Sun 10:31]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-10-08 Mon 08:48]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-09-29 Sat 18:50]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-09-20 Thu 09:50]
>>   +      - Rescheduled from "[2019-02-05 Tue .+1m]" on [2018-09-14 Fri 07:10]
>>   
>> bisect says it was introduced in
>> af81211fdc01b64449179bcdb77fb1c8ecb3fb94.
>
> Which is a bugfix…
>
> I think a solution would be to remove the repeater from timestamps
> inserted upon logging a state change or a re-scheduling.
>
> However, you would have to fix your old documents manually.
>
> Regards,

Hi Nicholas,

I think this commit is a problem:

  af81211fd (Also obey to repeaters in inactive time stamps, 2018-11-10)

At the beginning of the year I close my repeating tasks with lots of
logging and clocking entries and create a new one as follows:

1) Clone repeating task to new task for next year
2) Unscheduled old task which writes the scheduled repeater to the log
as above
3) Mark old task DONE 

Step 3 fails.  It moves the repeater in the log message from the old
scheduled task makes the task TODO again.

Example:

--------------------------------------------------------------------------------
* TODO Sample repeating task 2018
  SCHEDULED: <2019-01-07 Mon ++1w>
  :LOGBOOK:
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]

--------------------------------------------------------------------------------

Now clone the task with C-c C-x c 1 RET RET

--------------------------------------------------------------------------------
* TODO Sample repeating task 2018
  SCHEDULED: <2019-01-07 Mon ++1w>
  :LOGBOOK:
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]

* TODO Sample repeating task 2018
  SCHEDULED: <2019-01-07 Mon ++1w>
  :LOGBOOK:
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]
--------------------------------------------------------------------------------

Rename the second task to 2019 and unschedule the first task:

--------------------------------------------------------------------------------
* TODO Sample repeating task 2018
  :LOGBOOK:
  - Not scheduled, was "[2019-01-07 Mon ++1w]" on [2019-01-07 Mon 09:47]
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]

* TODO Sample repeating task 2019
  SCHEDULED: <2019-01-07 Mon ++1w>
  :LOGBOOK:
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]

--------------------------------------------------------------------------------

And finally Mark the first task DONE

--------------------------------------------------------------------------------
* TODO Sample repeating task 2018
  :PROPERTIES:
  :LAST_REPEAT: [2019-01-07 Mon 09:48]
  :END:
  :LOGBOOK:
  - State "DONE"       from "TODO"       [2019-01-07 Mon 09:48]
  - Not scheduled, was "[2019-01-14 Mon ++1w]" on [2019-01-07 Mon 09:47]
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]

* TODO Sample repeating task 2019
  SCHEDULED: <2019-01-07 Mon ++1w>
  :LOGBOOK:
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 2
  - Note taken on [2019-01-07 Mon 09:44] \\
    Log note 1
  :END:
  [2019-01-07 Mon 09:44]

--------------------------------------------------------------------------------

The first task should now be DONE not TODO but instead it has updated
the repeater in the log message from unscheduling instead and it's not
possible to mark this task as DONE with C-c C-t anymore.

Should this problem commit be reverted?
  af81211fd (Also obey to repeaters in inactive time stamps, 2018-11-10)

Regards,
Bernt






reply via email to

[Prev in Thread] Current Thread [Next in Thread]