GothenburgBitFactory / GothenburgBitFactory/taskwarrior

Print changed "duration" in "task info" when start/end are changed

Open
#2,516 10 comments 0 reactions 0 assignees View on GitHub
type:enhancement
Dominant language
C++
Stars
6.1k
Forks
423
Avg merge
1d 19h
Merged PRs (30d)
11

Description

When start/end times of a completed task are changed, the CLI output of task info just prints a statement like:

```
End changed from 'Sat 26 Jun 2021 15:15:54' to 'Fri 25 Jun 2021 05:00:00'.
```

Given duration was printed when task was "done", that duration is now stale... So the suggestion in this ticket is to print duration too if duration has changed.

```
End changed from 'Sat 26 Jun 2021 15:15:54' to 'Fri 25 Jun 2021 05:00:00'.
(duration changed from: old duration to new duration)
```

Same goes with editing the start time of completed task. Currently if I modify start of a task, it just prints:
```
Start set to 'Fri 25 Jun 2021 03:00:00'.
```

The suggestion is to print:

```
Start set to 'Fri 25 Jun 2021 03:00:00'.
(duration changed from: old duration to new duration)
```

> Perhaps task warrior can print duration only once at the end of a start - done epoch. This will require taskwarrior to remove string (duration:) from the current completed epoch before printing a fresh one in the info line of the current edit to the task. In that case, instead of printing "(duration changed from:...", it would just print "(duration:)" like below. You can think which one makes more sense for task warrior. Thanks :)

```
Start set to 'Fri 25 Jun 2021 03:00:00'. (duration: )
```

> This can make it very easy to read task info and calculate how much total time was doing a task. Let's say if a task had 5 start-done epochs, then the user will see just 5 (duration:) fields in task info. Which itself can perhaps have a different color group so it stands out from rest of the info.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.