Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial task parameters are being included in task log of info #3767

Open
Rahlir opened this issue Jan 28, 2025 · 3 comments
Open

Initial task parameters are being included in task log of info #3767

Rahlir opened this issue Jan 28, 2025 · 3 comments

Comments

@Rahlir
Copy link

Rahlir commented Jan 28, 2025

With the release of taskwarrior 3.3, we got back the task log feature, awesome, thanks for that! However, I noticed that the log now includes the initial values of task parameters. This is different from how it was previously (which in of itself doesn't have to be a bad thing) and I think it also doesn't really make sense: after all the point of the log is to show changes. One can easily infer the initial values by inspecting the changes and comparing them to the current value. Moreover, this log can take up a lot of screen estate if you have large amount of UDAs (which is usually the case for tasks imported via bugwarrior).

Hence, would it be possible to go back to showing only changes to the task in the task info log? Is there a technical reason for this new behavior? I know that taskwarrior moved to sqlite in the 3.x version, so perhaps that has something to do with this new behavior.

If it is technically feasible, I could also have a go at implementing this "fix" myself if @djmitche is stretched for time. I haven't had a look at the new task info implementation, but I am somewhat familiar with the previous version of the code-base.

@djmitche
Copy link
Collaborator

The new behavior shows all changes to the task, in the form of the operations performed on the task. Those are different in character from the old approach, because they are the basis of the data storage mechanism.

We could probably do a better job of summarizing this information. For example, if multiple tags are added at roughly the same time, they could probably be listed on one line.

I'm not sure omitting the initial parameters makes sense, though -- then to find the initial priority for example you'd have to scan the entire history to see if or when the priority was changed. But I suppose that's a matter of taste.

Please feel free to have a look at the implementation (in CmdInfo.cpp)!

@Rahlir
Copy link
Author

Rahlir commented Jan 28, 2025

Hmm, I thought that the new behavior probably had to do with the data model.

I understand your point and it's true that for older tasks understanding the initial value might get harder. This is the flipside though: for some tasks from bugwarrior, the task info doesn't even fit on screen.

Image

Now in this particular case a lot would be improved by summarizing the tags as you said. But that wouldn't really help with the high number of UDAs. Everyone is different, of course, but I would think that users don't really use task info to read the initial values of the task. The feature is useful when you are interested in checking what you changed and when; in cases like "hm, did I change the priority of this task last week?".

But that's just my two cents. For me, the cons of longer task info far outweigh the potential benefit of easier search for initial values. You are the maintainer, it's your call of course 😺 And I could always just turn off the journal.

@djmitche
Copy link
Collaborator

It feels like omitting the first timestamp's worth of info is going to address some use-cases and not others. However, better summarization might! Do you want to make some improvements there?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Backlog
Development

No branches or pull requests

2 participants