Thread (2 messages) 2 messages, 2 authors, 2019-10-08

Re: [PATCH v2 0/5] Use complete_action's todo list to do the rebase

From: Alban Gruin <hidden>
Date: 2019-10-08 16:18:41

Hi Junio,

Le 08/10/2019 à 04:45, Junio C Hamano a écrit :
Alban Gruin [off-list ref] writes:
quoted
This can be seen as a continuation of ag/reduce-rewriting-todo.

Currently, complete_action() releases its todo list before calling
sequencer_continue(), which reloads the todo list from the disk.  This
series removes this useless round trip.

Patches 1, 2, and 3 originally come from a series meaning to improve
rebase.missingCommitsCheck[0].  In the original series, I wanted to
check for missing commits in read_populate_todo(), so a warning could be
issued after a `rebase --continue' or an `exec' commands.  But, in the
case of the initial edit, it is already checked in complete_action(),
and would be checked a second time in sequencer_continue() (a caller of
read_populate_todo()).  So I hacked up sequencer_continue() to accept a
pointer to a todo list, and if not null, would skip the call to
read_populate_todo().  (This was really ugly, to be honest.)  Some
issues arose with git-prompt.sh[1], hence 1, 2 and 3.

Patch 5 is a new approach to what I did first.  Instead of bolting a new
parameter to sequencer_continue(), this makes complete_action() calling
directly pick_commits().

This is based on 4c86140027 ("Third batch").

Changes since v1:

 - Rewording of patches 1, 2, 4 and 5 according to comments made by
   Phillip Wood, Junio C Hamano and Johannes Schindelin.

The tip of this series is tagged as "reduce-todo-list-cont-v2" at
https://github.com/agrn/git.

[0] http://public-inbox.org/git/20190717143918.7406-1-alban.gruin@gmail.com/
[1] http://public-inbox.org/git/1732521.CJWHkCQAay@andromeda/

Alban Gruin (5):
  sequencer: update `total_nr' when adding an item to a todo list
  sequencer: update `done_nr' when skipping commands in a todo list
  sequencer: move the code writing total_nr on the disk to a new
    function
  rebase: fill `squash_onto' in get_replay_opts()
  sequencer: directly call pick_commits() from complete_action()

 builtin/rebase.c |  5 +++++
 sequencer.c      | 26 ++++++++++++++++++--------
 2 files changed, 23 insertions(+), 8 deletions(-)

Diff-intervalle contre v1 :
1:  d177b0de1a ! 1:  9215b191c7 sequencer: update `total_nr' when adding an item to a todo list
    @@ Metadata
      ## Commit message ##
         sequencer: update `total_nr' when adding an item to a todo list
     
    -    `total_nr' is the total amount of items, done and toto, that are in a
    -    todo list.  But unlike `nr', it was not updated when an item was
    -    appended to the list.
    +    `total_nr' is the total number of items, counting both done and todo,
The same s/amount/number/ needs to be done to the log message of
patches 2/5 and 3/5.  Other than that, updated log messages looked
much more understandable.  Thanks.
Ouch, sorry about that.  Thank you for fixing them.

Cheers,
Alban
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help