Merge branch 'seq-builtin-dev' into mymaster
[git/sbeyer.git] / A_SEQUENCER_TODO_FILE
blob7f3788e0ce2f55b9b67f9581b4f6be1f2f451a80
1 Hi,
3 this is a temporary file for the seq-builtin-dev (and thus seq-builtin-rfc)
4 branch that should collect information of what is still to do in the
5 sequencer builtin to be "ready" to be sent to the list.
6 (Remark: I personally use sequencer since GSoC 08 mid-time, so it is usable,
7  but it's not as perfect as it could be.)
9 The problem is that I have far too little time for further Git sequencer
10 development, so I thought it is helpful (for interested Git developers
11 or users) to make a file like this accessible in the repo.
15 1) TODO information from test suite:
18 Running t3404-rebase-interactive.sh
19 *   still broken 32: avoid unnecessary reset
21 Running t4150-am.sh
22 *   still broken 20: am --committer-date-is-author-date
23 *   still broken 22: am --ignore-date
24 *   still broken 23: am into an unborn branch
28 2) TODO or TODO-like information from recent commit messages:
31 commit 0f6d62165f33012887d5874873a497f1769413a6
32 Merge: e7b8dab... e658002...
33 Author: Stephan Beyer <s-beyer@gmx.net>
34 Date:   Mon Aug 3 03:55:27 2009 +0200
36     Merge branch 'junio/master' into seq-builtin-dev
38     This merge is a lazy merge that drops
40     1) git-am.sh changes introduced by:
41        ea10b60c91  Work around ash "alternate value" expansion bug
42        47c9739e5e  am: simplify "sq" function by using "git rev-parse --sq-quote"
43        a5a6755a1d  git-am foreign patch support: introduce patch_format
44        15ced753ac  git-am foreign patch support: autodetect some patch formats
45        c574e683b5  git-am foreign patch support: StGIT support
46        0cd29a0371  git-am: refactor 'cleaning up and aborting'
48     2) git-rebase--interactive.sh changes introduced by:
50        1830d9cb62  Fix rebase -p --onto
52     and this merge also does not
54     3) introduce the new OPT_FILENAME option to builtin-sequencer.
56 commit e7b8dab0c2a73ade92017a52bb1405ea1534ef20
57 Merge: 0c73ae7... 99ddd24...
58 Author: Stephan Beyer <s-beyer@gmx.net>
59 Date:   Wed May 20 10:54:37 2009 +0200
61     Merge branch 'junio/master' into seq-builtin-dev
63     After this merge f79d4c8 "teach git-am to apply a patch to an unborn
64     branch" has to be reimplemented in sequencer by allowing the "patch"
65     insn on unborn branches.
66     The related test in t/t4150-am.sh is set to test_expect_failure.
68     Conflicts:
69         git-am.sh
71 commit 0c73ae7c5ddfb348174fd6b85bf33f1a6b44c1ca
72 Merge: af91a89... e37347b...
73 Author: Stephan Beyer <s-beyer@gmx.net>
74 Date:   Thu Apr 9 16:58:24 2009 +0200
76     Merge branch 'junio/master' into seq-builtin-dev
78     Conflicts:
79         builtin-revert.c
80         git-am.sh
81         git-rebase--interactive.sh
83     0e757e30c726d9d8ae82bd9989be3cff5d230288 has to be applied to
84     builtin-sequencer.c to make it avoid unnecessary resets  again
85     in the future.
87 commit 71977c161725bbbea74b2b3fc24ec7756ceaf0a1
88 Merge: fd06e4e... 621f1b4...
89 Author: Stephan Beyer <s-beyer@gmx.net>
90 Date:   Sun Feb 8 03:26:06 2009 +0100
92     Merge branch 'junio/master' into seq-builtin-dev
94     This merge leaves two test cases of t/t4150-am.sh with
95     expected failure, because the tested features are not yet
96     implemented into git sequencer.
98     Conflicts:
99         git-am.sh
100         git-rebase--interactive.sh
101         run-command.c
102         t/t3411-rebase-preserve-around-merges.sh
104 commit 4e7ab1d123550dc16799b40bbe101a5ccb120178
105 Author: Stephan Beyer <s-beyer@gmx.net>
106 Date:   Sun Jan 18 22:56:48 2009 +0100
108     git-am: work around "Sequencing (./.)" messages by sequencer
110     We do not want "Sequencing (../..)" messages by sequencer, because we
111     have our own status messages.
113     This is only a workaround.
115     The best way is perhaps an option to sequencer telling what status
116     message to print.
118 commit dea5325d61432a83688a92a5c35213456c548c95
119 Author: Stephan Beyer <s-beyer@gmx.net>
120 Date:   Sun Jan 18 21:33:36 2009 +0100
122     sequencer: remove "Conflicts:" lines when picking (without -R)
124     This mimics the old git rebase -i behavior.
126     A better way could be to keep this, but run the prepare-commit-msg
127     hook with "merge" instead of "message" on --continue.
131 3) unsorted and unverified TODO information:
134 A long time ago I collected this information in an outliner tool with items
135 usually written down in German.
136 A pure dump of this information (German parts translated into English)
137 follows, but I cannot tell how much of it is useful or still true at all:
139  * 0e757e30c726d9d8ae82bd9989be3cff5d230288, see t3404 fail
141  * git-am --ignore-date and --commit-date-as-author-date
143  * git am: apply a patch to unborn branch: f79d4c8a0f22d7fd25018be846c7e
145  * sequencer insn counting: save "cur" and "max" and count correctly after
146    --continue (i.e. go on and not start at 1 again)
148  * Bug: see Sitaram Chamarty mail -> nice test case, fails currently
150  * Bug? see Constantine plot
152  * pick -r A ; squash A -> empty commit! Should _fail_ instead
154  * 4fb1a19d502f4a2ca47bfb75cce605f3447819e6 -> make_patch
155    * still to do: prettify diff -cc [see stash on host "littlefarm"]
156    * pick seq-builtin-rfc~5 printed conflict patch instead of
157      writing it to git-dir/sequencer/patch - why?
158      [seq-builtin-rfc~5 = 58522f29193f1fa6a8974250105053fbb46ccbec]
160  * check original vs mine: rebase --continue and one cherry-pick
161    -> does this insert "Conflicts:" in commit message?
162    * mine: rerere() is called AFTER printing "Automatic cherry-pick failed"
163      in pick()
164    * on conflict: commit msg doesn't look like conflict after "git commit"
166  * check: c767184d8f99404d456b32a2c6c5c41d6db7a847 -> same behavior currently?
168  * check: does original rebase -i -p redo the changes of a _merge commit_?
169    If no, is this a feature or a bug and do we want it (after the
170    transition to sequencer without that feature)?
172  * case WHY_CONFLICT: why = WHY_UNKNOWN; in sequencer_continue?
173    Is this correct/useful?
175  * git-am/git-rebase -> new option for applying/rebasing status messages
177  * git-am: Dirty index: cannot apply patches (dirty: $files)
179  * Bug? git-rebase does not like fast-forward
181  * split rebase-i migration in rebase -i and rebase -i -p migration
182    into separate patches, so that rebase -i can be accepted when
183    rebase -i -p migration is not loved by everyone
185    * rebase -i -p is a topic on its own
187      * Dscho didn't like the way Junio had proposed it: using
188        "mark", "reset", "merge" insns
190      * after some revealed rebase -i -p foibles,
191        Dscho started a rewrite of rebase -i -p
193      * See his blog:
194        http://repo.or.cz/w/git/dscho.git?a=blob_plain;hb=blog;f=index.html
196  * strbuf_readlink?
198  * WHY_UNKNOWN output?
200  * improve reset_index_file()
201    - do we really need to _write_?
203  * squashing into a merge?
205  * fflush(stdout) on "Sequencing"?
207  * reduce_heads()?
209  * get rid of STDERR in merge
210    (Automatic merge went well; stopped before committing as requested)
212  * look, if commit_tree can be used in a useful way (inside do_commit())
214  * lock_files?
216  * respect commit.signoff?
219 Regards,
220   Stephan Beyer <s-beyer AT gmx.net>