From: Rafael Silva <rafaeloliveira.cs@gmail.com>
To: Eric Sunshine <sunshine@sunshineco.com>
Cc: Git List <git@vger.kernel.org>
Subject: Re: [PATCH 0/7] teach `worktree list` verbose mode and prunable annotations
Date: Fri, 08 Jan 2021 08:38:22 +0100 [thread overview]
Message-ID: <gohp6kpn2gsepd.fsf@gmail.com> (raw)
In-Reply-To: <CAPig+cSMA0J9fBvG=L0ojWvd5ePwxb6ya67umX1HdOy4LEiZpg@mail.gmail.com>
Eric Sunshine writes:
> On Mon, Jan 4, 2021 at 11:22 AM Rafael Silva
> <rafaeloliveira.cs@gmail.com> wrote:
>> In c57b3367be (worktree: teach `list` to annotate locked worktree,
>> 2020-10-11) we taught `git worktree list` to annotate working tree that
>> is locked by appending "locked" text in order to signalize to the user
>> that a working tree is locked. During the review, there was some
>> discussion about additional annotations and information that `list`
>> command could provide to the user that has long been envisioned and
>> mentioned in [2], [3] and [4].
>>
>> This patch series address some of these changes by teaching
>> `worktree list` to show "prunable" annotation, adding verbose mode and
>> extending the --porcelain format with prunable and locked annotation as
>> follow up from [1]. Additionally, it address one shortcoming for porcelain
>> format to escape any newline characters (LF and CRLF) for the lock reason
>> to prevent breaking format mentioned in [4] and [1] during the review
>> cycle.
>
> Thank you for working on this. I'm happy to see these long-envisioned
> enhancements finally taking shape. Before even reviewing the patches,
> I decided to apply them and play with the new features, and I'm very
> pleased to see that they behave exactly as I had envisioned all those
> years ago.
>
> Very nicely done.
Thank you. I'm glad to hear the patches are aligned with what you
envisioned.
> I'll review the patches when I finish responding to this cover letter.
>
Thank you for reviewing and applying the patches, really appreciate it.
>> The fifth patch adds worktree_escape_reason() that accepts a (char *)
>> text and returned the text with any LF or CRLF escaped. The caller is
>> responsible to freeing the escaped text. This is used by the locked
>> annotation in porcelain format. Currently, this is defined within
>> builtin/worktree.c as I was not sure whether libfying the function as
>> part of this series is a good idea. At this time it seems more sensible
>> to leave the code internally and libfying later once we are confident
>> about the implementation and whether it can be used in other part of the
>> code base but I'm open for suggestion.
>
> Perhaps I misunderstand, but I had envisioned employing one of the
> codebase's existing quoting/escaping functions rather than crafting a
> new one from scratch. However, I'll reserve judgment until I actually
> read the patch.
Agreed. It make sense to reuse one of the already implemented functions
from the code base. for some reason I was not able to find it. I believe
this was cleared out in one of the patches replies by you and Phillip Wood.
I will remove this and reuse one of the existing function on the next
revision.
--
Thanks
Rafael
next prev parent reply other threads:[~2021-01-08 7:39 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-04 16:21 [PATCH 0/7] teach `worktree list` verbose mode and prunable annotations Rafael Silva
2021-01-04 16:21 ` [PATCH 1/7] worktree: move should_prune_worktree() to worktree.c Rafael Silva
2021-01-06 5:58 ` Eric Sunshine
2021-01-08 7:40 ` Rafael Silva
2021-01-06 6:55 ` Eric Sunshine
2021-01-07 7:24 ` Eric Sunshine
2021-01-08 7:41 ` Rafael Silva
2021-01-04 16:21 ` [PATCH 2/7] worktree: implement worktree_prune_reason() wrapper Rafael Silva
2021-01-06 7:08 ` Eric Sunshine
2021-01-08 7:42 ` Rafael Silva
2021-01-04 16:21 ` [PATCH 3/7] worktree: teach worktree_lock_reason() to gently handle main worktree Rafael Silva
2021-01-06 7:29 ` Eric Sunshine
2021-01-08 7:43 ` Rafael Silva
2021-01-04 16:21 ` [PATCH 4/7] worktree: teach `list` prunable annotation and verbose Rafael Silva
2021-01-06 8:31 ` Eric Sunshine
2021-01-08 7:45 ` Rafael Silva
2021-01-04 16:21 ` [PATCH 5/7] worktree: `list` escape lock reason in --porcelain Rafael Silva
2021-01-05 10:29 ` Phillip Wood
2021-01-05 11:02 ` [PATCH] worktree: add -z option for list subcommand Phillip Wood
2021-01-07 3:34 ` Eric Sunshine
2021-01-08 10:33 ` Phillip Wood
2021-01-10 7:27 ` Eric Sunshine
2021-01-06 9:07 ` [PATCH 5/7] worktree: `list` escape lock reason in --porcelain Eric Sunshine
2021-01-08 7:47 ` Rafael Silva
2021-01-06 8:59 ` Eric Sunshine
2021-01-04 16:21 ` [PATCH 6/7] worktree: add tests for `list` verbose and annotations Rafael Silva
2021-01-06 9:39 ` Eric Sunshine
2021-01-07 4:09 ` Eric Sunshine
2021-01-08 7:49 ` Rafael Silva
2021-01-04 16:21 ` [PATCH 7/7] worktree: document `list` verbose and prunable annotations Rafael Silva
2021-01-06 9:57 ` Eric Sunshine
2021-01-08 7:49 ` Rafael Silva
2021-01-06 5:36 ` [PATCH 0/7] teach `worktree list` verbose mode " Eric Sunshine
2021-01-08 7:38 ` Rafael Silva [this message]
2021-01-08 8:19 ` Eric Sunshine
2021-01-17 23:42 ` [PATCH v2 0/6] " Rafael Silva
2021-01-17 23:42 ` [PATCH v2 1/6] worktree: libify should_prune_worktree() Rafael Silva
2021-01-17 23:42 ` [PATCH v2 2/6] worktree: teach worktree to lazy-load "prunable" reason Rafael Silva
2021-01-18 2:57 ` Eric Sunshine
2021-01-19 7:57 ` Rafael Silva
2021-01-17 23:42 ` [PATCH v2 3/6] worktree: teach worktree_lock_reason() to gently handle main worktree Rafael Silva
2021-01-17 23:42 ` [PATCH v2 4/6] worktree: teach `list --porcelain` to annotate locked worktree Rafael Silva
2021-01-18 3:55 ` Eric Sunshine
2021-01-19 8:20 ` Rafael Silva
2021-01-19 17:16 ` Eric Sunshine
2021-01-17 23:42 ` [PATCH v2 5/6] worktree: teach `list` to annotate prunable worktree Rafael Silva
2021-01-18 4:45 ` Eric Sunshine
2021-01-19 10:26 ` Rafael Silva
2021-01-19 17:23 ` Eric Sunshine
2021-01-17 23:42 ` [PATCH v2 6/6] worktree: teach `list` verbose mode Rafael Silva
2021-01-18 5:15 ` Eric Sunshine
2021-01-18 19:40 ` Eric Sunshine
2021-01-18 5:33 ` [PATCH v2 0/6] teach `worktree list` verbose mode and prunable annotations Eric Sunshine
2021-01-19 16:44 ` Rafael Silva
2021-01-19 21:27 ` [PATCH v3 0/7] " Rafael Silva
2021-01-19 21:27 ` [PATCH v3 1/7] worktree: libify should_prune_worktree() Rafael Silva
2021-01-19 21:27 ` [PATCH v3 2/7] worktree: teach worktree to lazy-load "prunable" reason Rafael Silva
2021-01-19 21:27 ` [PATCH v3 3/7] worktree: teach worktree_lock_reason() to gently handle main worktree Rafael Silva
2021-01-19 21:27 ` [PATCH v3 4/7] t2402: ensure locked worktree is properly cleaned up Rafael Silva
2021-01-24 7:50 ` Eric Sunshine
2021-01-24 10:19 ` Rafael Silva
2021-01-19 21:27 ` [PATCH v3 5/7] worktree: teach `list --porcelain` to annotate locked worktree Rafael Silva
2021-01-20 11:00 ` Phillip Wood
2021-01-21 3:18 ` Junio C Hamano
2021-01-21 15:25 ` Rafael Silva
2021-01-24 8:24 ` Eric Sunshine
2021-01-24 8:10 ` Eric Sunshine
2021-01-24 10:20 ` Rafael Silva
2021-01-19 21:27 ` [PATCH v3 6/7] worktree: teach `list` to annotate prunable worktree Rafael Silva
2021-01-21 3:28 ` Junio C Hamano
2021-01-21 15:09 ` Rafael Silva
2021-01-21 22:18 ` Junio C Hamano
2021-01-19 21:27 ` [PATCH v3 7/7] worktree: teach `list` verbose mode Rafael Silva
2021-01-24 8:42 ` Eric Sunshine
2021-01-24 10:21 ` Rafael Silva
2021-01-24 8:51 ` [PATCH v3 0/7] teach `worktree list` verbose mode and prunable annotations Eric Sunshine
2021-01-27 8:08 ` Rafael Silva
2021-01-27 8:03 ` Rafael Silva
2021-01-27 8:03 ` [PATCH v4 1/7] worktree: libify should_prune_worktree() Rafael Silva
2021-01-27 8:03 ` [PATCH v4 2/7] worktree: teach worktree to lazy-load "prunable" reason Rafael Silva
2021-01-27 8:03 ` [PATCH v4 3/7] worktree: teach worktree_lock_reason() to gently handle main worktree Rafael Silva
2021-01-27 8:03 ` [PATCH v4 4/7] t2402: ensure locked worktree is properly cleaned up Rafael Silva
2021-01-27 8:03 ` [PATCH v4 5/7] worktree: teach `list --porcelain` to annotate locked worktree Rafael Silva
2021-01-27 8:03 ` [PATCH v4 6/7] worktree: teach `list` to annotate prunable worktree Rafael Silva
2021-01-27 8:03 ` [PATCH v4 7/7] worktree: teach `list` verbose mode Rafael Silva
2021-01-30 7:04 ` [PATCH v3 0/7] teach `worktree list` verbose mode and prunable annotations Eric Sunshine
2021-01-30 9:42 ` Rafael Silva
2021-01-30 17:50 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=gohp6kpn2gsepd.fsf@gmail.com \
--to=rafaeloliveira.cs@gmail.com \
--cc=git@vger.kernel.org \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).