Mercurial > hg
annotate tests/test-mq-merge.t @ 39561:d06834e0f48e
wireprotov2peer: stream decoded responses
Previously, wire protocol version 2 would buffer all response data.
Only once all data was received did we CBOR decode it and resolve
the future associated with the command. This was obviously not
desirable. In future commits that introduce large response payloads,
this caused significant memory bloat and slowed down client
operations due to waiting on the server.
This commit refactors the response handling code so that response
data can be streamed.
Command response objects now contain a buffered CBOR decoder. As
new data arrives, it is fed into the decoder. Decoded objects are
made available to the generator as they are decoded.
Because there is a separate thread processing incoming frames and
feeding data into the response object, there is the potential for
race conditions when mutating response objects. So a lock has been
added to guard access to critical state variables.
Because the generator emitting decoded objects needs to wait on
those objects to become available, we've added an Event for the
generator to wait on so it doesn't busy loop. This does mean
there is the potential for deadlocks. And I'm pretty sure they can
occur in some scenarios. We already have a handful of TODOs around
this. But I've added some more. Fixing this will likely require
moving the background thread receiving frames into clienthandler.
We likely would have done this anyway when implementing the client
bits for the SSH transport.
Test output changes because the initial CBOR map holding the overall
response state is now always handled internally by the response
object.
Differential Revision: https://phab.mercurial-scm.org/D4474
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 29 Aug 2018 15:17:11 -0700 |
parents | 4441705b7111 |
children | 4152183acedd |
rev | line source |
---|---|
13520
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
1 Setup extension: |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
2 |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22521
diff
changeset
|
3 $ cat <<EOF >> $HGRCPATH |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22521
diff
changeset
|
4 > [extensions] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22521
diff
changeset
|
5 > mq = |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22521
diff
changeset
|
6 > [mq] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22521
diff
changeset
|
7 > git = keep |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22521
diff
changeset
|
8 > EOF |
13520
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
9 |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
10 Test merge with mq changeset as the second parent: |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
11 |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
12 $ hg init m |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
13 $ cd m |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
14 $ touch a b c |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
15 $ hg add a |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
16 $ hg commit -m a |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
17 $ hg add b |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
18 $ hg qnew -d "0 0" b |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
19 $ hg update 0 |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
20 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
21 $ hg add c |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
22 $ hg commit -m c |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
23 created new head |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
24 $ hg merge |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
25 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
26 (branch merge, don't forget to commit) |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
27 $ hg commit -m merge |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
28 abort: cannot commit over an applied mq patch |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
29 [255] |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
30 $ cd .. |
9510ddf87c43
mq: forbid commit of merge involving mq patches
Martin Geisler <mg@aragost.com>
parents:
12640
diff
changeset
|
31 |
12399
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12376
diff
changeset
|
32 Issue529: mq aborts when merging patch deleting files |
4333
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
33 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
34 $ checkundo() |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
35 > { |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
36 > if [ -f .hg/store/undo ]; then |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
37 > echo ".hg/store/undo still exists" |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
38 > fi |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
39 > } |
5527
0b3f910dfd17
mq: really remove undo after a qpush (and after a strip)
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4437
diff
changeset
|
40 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
41 Commit two dummy files in "init" changeset: |
4333
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
42 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
43 $ hg init t |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
44 $ cd t |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
45 $ echo a > a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
46 $ echo b > b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
47 $ hg ci -Am init |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
48 adding a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
49 adding b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
50 $ hg tag -l init |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
51 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
52 Create a patch removing a: |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
53 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
54 $ hg qnew rm_a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
55 $ hg rm a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
56 $ hg qrefresh -m "rm a" |
4333
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
57 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
58 Save the patch queue so we can merge it later: |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
59 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
60 $ hg qsave -c -e |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
23172
diff
changeset
|
61 copy $TESTTMP/t/.hg/patches to $TESTTMP/t/.hg/patches.1 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
62 $ checkundo |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
63 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
64 Update b and commit in an "update" changeset: |
4333
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
65 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
66 $ hg up -C init |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
67 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
68 $ echo b >> b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
69 $ hg st |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
70 M b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
71 $ hg ci -m update |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
72 created new head |
4333
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
73 |
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
74 # Here, qpush used to abort with : |
4f721e96f1de
Add test for issue 529 - "mq aborts when merging patch deleting files".
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
75 # The system cannot find the file specified => a |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
76 $ hg manifest |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
77 a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
78 b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
79 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
80 $ hg qpush -a -m |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
23172
diff
changeset
|
81 merging with queue at: $TESTTMP/t/.hg/patches.1 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
82 applying rm_a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
83 now at: rm_a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
84 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
85 $ checkundo |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
86 $ hg manifest |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
87 b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
88 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
89 Ensure status is correct after merge: |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
90 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
91 $ hg qpop -a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
92 popping rm_a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
93 popping .hg.patches.merge.marker |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
94 patch queue now empty |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
95 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
96 $ cd .. |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
97 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
98 Classic MQ merge sequence *with an explicit named queue*: |
4437
a210b40d0860
Make mergepatch save queue now that qpush isn't.
Brendan Cully <brendan@kublai.com>
parents:
4333
diff
changeset
|
99 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
100 $ hg init t2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
101 $ cd t2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
102 $ echo '[diff]' > .hg/hgrc |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
103 $ echo 'nodates = 1' >> .hg/hgrc |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
104 $ echo a > a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
105 $ hg ci -Am init |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
106 adding a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
107 $ echo b > a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
108 $ hg ci -m changea |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
109 $ hg up -C 0 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
110 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
111 $ hg cp a aa |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
112 $ echo c >> a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
113 $ hg qnew --git -f -e patcha |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
114 $ echo d >> a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
115 $ hg qnew -d '0 0' -f -e patcha2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
116 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
117 Create the reference queue: |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
118 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
119 $ hg qsave -c -e -n refqueue |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
23172
diff
changeset
|
120 copy $TESTTMP/t2/.hg/patches to $TESTTMP/t2/.hg/refqueue |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
121 $ hg up -C 1 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
122 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
123 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
124 Merge: |
6628
f18f14bae172
test-mq-merge: test mq merge and explicit patch queue
Patrick Mezard <pmezard@gmail.com>
parents:
5527
diff
changeset
|
125 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
126 $ HGMERGE=internal:other hg qpush -a -m -n refqueue |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
23172
diff
changeset
|
127 merging with queue at: $TESTTMP/t2/.hg/refqueue |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
128 applying patcha |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
129 patching file a |
16124
0e0060bf2f44
patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents:
15775
diff
changeset
|
130 Hunk #1 succeeded at 2 with fuzz 1 (offset 0 lines). |
0e0060bf2f44
patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents:
15775
diff
changeset
|
131 fuzz found when applying patch, stopping |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
132 patch didn't work out, merging patcha |
16124
0e0060bf2f44
patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents:
15775
diff
changeset
|
133 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
134 0 files updated, 2 files merged, 0 files removed, 0 files unresolved |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
135 (branch merge, don't forget to commit) |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
136 applying patcha2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
137 now at: patcha2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
138 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
139 Check patcha is still a git patch: |
6628
f18f14bae172
test-mq-merge: test mq merge and explicit patch queue
Patrick Mezard <pmezard@gmail.com>
parents:
5527
diff
changeset
|
140 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
141 $ cat .hg/patches/patcha |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
142 # HG changeset patch |
22521
3f948469bac0
mq: write '# Parent ' lines with two spaces like export does (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
22520
diff
changeset
|
143 # Parent d3873e73d99ef67873dac33fbcc66268d5d2b6f4 |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
144 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
145 diff --git a/a b/a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
146 --- a/a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
147 +++ b/a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
148 @@ -1,1 +1,2 @@ |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
149 -b |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
150 +a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
151 +c |
20294
243ea5ffdf31
diff: search beyond ancestor when detecting renames
Mads Kiilerich <madski@unity3d.com>
parents:
16124
diff
changeset
|
152 diff --git a/a b/aa |
243ea5ffdf31
diff: search beyond ancestor when detecting renames
Mads Kiilerich <madski@unity3d.com>
parents:
16124
diff
changeset
|
153 copy from a |
243ea5ffdf31
diff: search beyond ancestor when detecting renames
Mads Kiilerich <madski@unity3d.com>
parents:
16124
diff
changeset
|
154 copy to aa |
243ea5ffdf31
diff: search beyond ancestor when detecting renames
Mads Kiilerich <madski@unity3d.com>
parents:
16124
diff
changeset
|
155 --- a/a |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
156 +++ b/aa |
20294
243ea5ffdf31
diff: search beyond ancestor when detecting renames
Mads Kiilerich <madski@unity3d.com>
parents:
16124
diff
changeset
|
157 @@ -1,1 +1,1 @@ |
243ea5ffdf31
diff: search beyond ancestor when detecting renames
Mads Kiilerich <madski@unity3d.com>
parents:
16124
diff
changeset
|
158 -b |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
159 +a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
160 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
161 Check patcha2 is still a regular patch: |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
162 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
163 $ cat .hg/patches/patcha2 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
164 # HG changeset patch |
22520
9d4ebb75de53
mq: write headers for new HG patches in the same order as export (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
20294
diff
changeset
|
165 # Date 0 0 |
22521
3f948469bac0
mq: write '# Parent ' lines with two spaces like export does (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
22520
diff
changeset
|
166 # Parent ???????????????????????????????????????? (glob) |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
167 |
12376
97ffc68f71d3
tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents:
12375
diff
changeset
|
168 diff -r ???????????? -r ???????????? a (glob) |
12324
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
169 --- a/a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
170 +++ b/a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
171 @@ -1,2 +1,3 @@ |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
172 a |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
173 c |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
174 +d |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
175 |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
176 $ cd .. |
b701610f6c56
tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11071
diff
changeset
|
177 |