annotate tests/test-mq-qimport.t @ 37048:fc5e261915b9

wireproto: require POST for all HTTPv2 requests Wire protocol version 1 transfers argument data via request headers by default. This has historically caused problems because servers institute limits on the length of individual HTTP headers as well as the total size of all request headers. Mercurial servers can advertise the maximum length of an individual header. But there's no guarantee any intermediate HTTP agents will accept headers up to that length. In the existing wire protocol, server operators typically also key off the HTTP request method to implement authentication. For example, GET requests translate to read-only requests and can be allowed. But read-write commands must use POST and require authentication. This has typically worked because the only wire protocol commands that use POST modify the repo (e.g. the "unbundle" command). There is an experimental feature to enable clients to transmit argument data via POST request bodies. This is technically a better and more robust solution. But we can't enable it by default because of servers assuming POST means write access. In version 2 of the wire protocol, the permissions of a request are encoded in the URL. And with it being a new protocol in a new URL space, we're not constrained by backwards compatibility requirements. This commit adopts the technically superior mechanism of using HTTP request bodies to send argument data by requiring POST for all commands. Strictly speaking, it may be possible to send request bodies on GET requests. But my experience is that not all HTTP stacks support this. POST pretty much always works. Using POST for read-only operations does sacrifice some RESTful design purity. But this API cares about practicality, not about being in Roy T. Fielding's REST ivory tower. There's a chance we may relax this restriction in the future. But for now, I want to see how far we can get with a POST only API. Differential Revision: https://phab.mercurial-scm.org/D2837
author Gregory Szorc <gregory.szorc@gmail.com>
date Tue, 13 Mar 2018 11:57:43 -0700
parents b543b3ce608b
children d17cfb23017c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21965
diff changeset
1 #require killdaemons
6027
cee68264ed92 mq: qimport must read patches in binary mode
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
2
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
3 $ cat > writelines.py <<EOF
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
4 > import sys
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
5 > path = sys.argv[1]
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
6 > args = sys.argv[2:]
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
7 > assert (len(args) % 2) == 0
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
8 >
36021
85c94c9d342b py3: replace file() with open() in test-mq-qimport.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32940
diff changeset
9 > f = open(path, 'wb')
36292
b543b3ce608b py3: use range instead of xrange in tests/test-mq-qimport.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 36021
diff changeset
10 > for i in range(len(args)/2):
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
11 > count, s = args[2*i:2*i+2]
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
12 > count = int(count)
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
13 > s = s.decode('string_escape')
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
14 > f.write(s*count)
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
15 > f.close()
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
16 >
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
17 > EOF
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
18 > cat <<EOF >> $HGRCPATH
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
19 > [extensions]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
20 > mq =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
21 > [diff]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
22 > git = 1
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22046
diff changeset
23 > EOF
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
24 $ hg init repo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
25 $ cd repo
6027
cee68264ed92 mq: qimport must read patches in binary mode
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
26
16987
54295c87eefc mq: abort if no files or revisions are specified for qimport
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
27 qimport without file or revision
54295c87eefc mq: abort if no files or revisions are specified for qimport
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
28
54295c87eefc mq: abort if no files or revisions are specified for qimport
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
29 $ hg qimport
54295c87eefc mq: abort if no files or revisions are specified for qimport
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
30 abort: no files or revisions specified
54295c87eefc mq: abort if no files or revisions are specified for qimport
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
31 [255]
54295c87eefc mq: abort if no files or revisions are specified for qimport
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
32
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
33 qimport non-existing-file
6027
cee68264ed92 mq: qimport must read patches in binary mode
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
34
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
35 $ hg qimport non-existing-file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
36 abort: unable to read file non-existing-file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
37 [255]
6940
05ec27530d04 qimport: report filename in case of IOError
Martin Geisler <mg@daimi.au.dk>
parents: 6027
diff changeset
38
16359
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
39 qimport null revision
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
40
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
41 $ hg qimport -r null
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
42 abort: revision -1 is not mutable
29968
0342bf292f73 mq: use single quotes in use warning
timeless <timeless@mozdev.org>
parents: 28388
diff changeset
43 (see 'hg help phases' for details)
16359
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
44 [255]
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
45 $ hg qseries
a1b6a63f9f39 context: make changectx.mutable() benefit from .phase() logic
Patrick Mezard <patrick@mezard.eu>
parents: 16119
diff changeset
46
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
47 import email
6940
05ec27530d04 qimport: report filename in case of IOError
Martin Geisler <mg@daimi.au.dk>
parents: 6027
diff changeset
48
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
49 $ hg qimport --push -n email - <<EOF
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
50 > From: Username in email <test@example.net>
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
51 > Subject: [PATCH] Message in email
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
52 > Date: Fri, 02 Jan 1970 00:00:00 +0000
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
53 >
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
54 > Text before patch.
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
55 >
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
56 > # HG changeset patch
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
57 > # User Username in patch <test@example.net>
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
58 > # Date 0 0
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
59 > # Node ID 1a706973a7d84cb549823634a821d9bdf21c6220
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
60 > # Parent 0000000000000000000000000000000000000000
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
61 > First line of commit message.
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
62 >
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
63 > More text in commit message.
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
64 > --- confuse the diff detection
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
65 >
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
66 > diff --git a/x b/x
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
67 > new file mode 100644
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
68 > --- /dev/null
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
69 > +++ b/x
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
70 > @@ -0,0 +1,1 @@
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
71 > +new file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
72 > Text after patch.
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
73 >
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
74 > EOF
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
75 adding email to series file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
76 applying email
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
77 now at: email
9287
53fdf18fd63b mq: Parse commit message after we find start of changeset patch
David Soria Parra <dsp@php.net>
parents: 8362
diff changeset
78
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
79 hg tip -v
9287
53fdf18fd63b mq: Parse commit message after we find start of changeset patch
David Soria Parra <dsp@php.net>
parents: 8362
diff changeset
80
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
81 $ hg tip -v
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
82 changeset: 0:1a706973a7d8
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
83 tag: email
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
84 tag: qbase
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
85 tag: qtip
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
86 tag: tip
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
87 user: Username in patch <test@example.net>
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
88 date: Thu Jan 01 00:00:00 1970 +0000
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
89 files: x
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
90 description:
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
91 First line of commit message.
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
92
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
93 More text in commit message.
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
94
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
95
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
96 $ hg qpop
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
97 popping email
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
98 patch queue now empty
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
99 $ hg qdelete email
9287
53fdf18fd63b mq: Parse commit message after we find start of changeset patch
David Soria Parra <dsp@php.net>
parents: 8362
diff changeset
100
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
101 import URL
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
102
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
103 $ echo foo >> foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
104 $ hg add foo
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12464
diff changeset
105 $ hg diff > url.diff
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
106 $ hg revert --no-backup foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
107 $ rm foo
9287
53fdf18fd63b mq: Parse commit message after we find start of changeset patch
David Soria Parra <dsp@php.net>
parents: 8362
diff changeset
108
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
109 Under unix: file:///foobar/blah
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
110 Under windows: file:///c:/foobar/blah
9287
53fdf18fd63b mq: Parse commit message after we find start of changeset patch
David Soria Parra <dsp@php.net>
parents: 8362
diff changeset
111
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12464
diff changeset
112 $ patchurl=`pwd | tr '\\\\' /`/url.diff
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
113 $ expr "$patchurl" : "\/" > /dev/null || patchurl="/$patchurl"
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
114 $ hg qimport file://"$patchurl"
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
115 adding url.diff to series file
12642
bb35840e965c tests: remove the last traces of $HGTMP
Mads Kiilerich <mads@kiilerich.com>
parents: 12464
diff changeset
116 $ rm url.diff
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
117 $ hg qun
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
118 url.diff
9287
53fdf18fd63b mq: Parse commit message after we find start of changeset patch
David Soria Parra <dsp@php.net>
parents: 8362
diff changeset
119
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
120 import patch that already exists
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
121
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
122 $ echo foo2 >> foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
123 $ hg add foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
124 $ hg diff > ../url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
125 $ hg revert --no-backup foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
126 $ rm foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
127 $ hg qimport ../url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
128 abort: patch "url.diff" already exists
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
129 [255]
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
130 $ hg qpush
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
131 applying url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
132 now at: url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
133 $ cat foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
134 foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
135 $ hg qpop
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
136 popping url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
137 patch queue now empty
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
138
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
139 qimport -f
7158
d1d011accf94 mq: let qimport read patches from URLs
Brendan Cully <brendan@kublai.com>
parents: 6940
diff changeset
140
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
141 $ hg qimport -f ../url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
142 adding url.diff to series file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
143 $ hg qpush
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
144 applying url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
145 now at: url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
146 $ cat foo
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
147 foo2
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
148 $ hg qpop
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
149 popping url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
150 patch queue now empty
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
151
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
152 build diff with CRLF
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
153
32940
75be14993fda cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents: 31556
diff changeset
154 $ $PYTHON ../writelines.py b 5 'a\n' 5 'a\r\n'
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
155 $ hg ci -Am addb
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
156 adding b
32940
75be14993fda cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents: 31556
diff changeset
157 $ $PYTHON ../writelines.py b 2 'a\n' 10 'b\n' 2 'a\r\n'
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
158 $ hg diff > b.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
159 $ hg up -C
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
160 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
161
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
162 qimport CRLF diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
163
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
164 $ hg qimport b.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
165 adding b.diff to series file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
166 $ hg qpush
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
167 applying b.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
168 now at: b.diff
7160
1b7b21b634f2 mq: make qimport -f work properly. Closes issue1255.
Brendan Cully <brendan@kublai.com>
parents: 7158
diff changeset
169
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
170 try to import --push
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
171
16119
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
172 $ cat > appendfoo.diff <<EOF
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
173 > append foo
17347
2da47de36b6f check-code: fix check for trailing whitespace on continued lines too
Mads Kiilerich <mads@kiilerich.com>
parents: 16987
diff changeset
174 >
16119
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
175 > diff -r 07f494440405 -r 261500830e46 baz
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
176 > --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
177 > +++ b/baz Thu Jan 01 00:00:00 1970 +0000
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
178 > @@ -0,0 +1,1 @@
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
179 > +foo
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
180 > EOF
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
181
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
182 $ cat > appendbar.diff <<EOF
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
183 > append bar
17347
2da47de36b6f check-code: fix check for trailing whitespace on continued lines too
Mads Kiilerich <mads@kiilerich.com>
parents: 16987
diff changeset
184 >
16119
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
185 > diff -r 07f494440405 -r 261500830e46 baz
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
186 > --- a/baz Thu Jan 01 00:00:00 1970 +0000
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
187 > +++ b/baz Thu Jan 01 00:00:00 1970 +0000
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
188 > @@ -1,1 +1,2 @@
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
189 > foo
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
190 > +bar
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
191 > EOF
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
192
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
193 $ hg qimport --push appendfoo.diff appendbar.diff
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
194 adding appendfoo.diff to series file
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
195 adding appendbar.diff to series file
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
196 applying appendfoo.diff
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
197 applying appendbar.diff
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
198 now at: appendbar.diff
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
199 $ hg qfin -a
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
200 patch b.diff finalized without changeset message
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
201 $ touch .hg/patches/append_foo
21965
fd7839d1107d qimport: record imported revs incrementally (issue3874)
Matt Mackall <mpm@selenic.com>
parents: 17565
diff changeset
202 $ hg qimport -r 'p1(.)::'
fd7839d1107d qimport: record imported revs incrementally (issue3874)
Matt Mackall <mpm@selenic.com>
parents: 17565
diff changeset
203 $ hg qapplied
27919
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
204 append_foo__1
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
205 append_bar
21965
fd7839d1107d qimport: record imported revs incrementally (issue3874)
Matt Mackall <mpm@selenic.com>
parents: 17565
diff changeset
206 $ hg qfin -a
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
207 $ rm .hg/patches/append_foo
16119
5de83d9ca79c mq: make qimport --push push all imported patches (issue3130)
Patrick Mezard <patrick@mezard.eu>
parents: 16027
diff changeset
208 $ hg qimport -r 'p1(.)::' -P
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
209 $ hg qpop -a
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
210 popping append_bar
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
211 popping append_foo
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
212 patch queue now empty
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
213 $ hg qdel append_foo
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
214 $ hg qdel -k append_bar
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
215
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
216 qimport -e
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
217
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
218 $ hg qimport -e append_bar
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
219 adding append_bar to series file
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
220 $ hg qdel -k append_bar
6027
cee68264ed92 mq: qimport must read patches in binary mode
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
221
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
222 qimport -e --name newname oldexisitingpatch
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
223
26736
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
224 $ hg qimport -e --name this-name-is-better append_bar
143b52fce68e mq: generate patch names from first line of description
Mads Kiilerich <mads@kiilerich.com>
parents: 25474
diff changeset
225 renaming append_bar to this-name-is-better
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
226 adding this-name-is-better to series file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
227 $ hg qser
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
228 this-name-is-better
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
229 url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
230
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
231 qimport -e --name without --force
11699
da0b9109186d mq: support "qimport --existing --name renametothis thatexistingpatch"
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10775
diff changeset
232
12464
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
233 $ cp .hg/patches/this-name-is-better .hg/patches/3.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
234 $ hg qimport -e --name this-name-is-better 3.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
235 abort: patch "this-name-is-better" already exists
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
236 [255]
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
237 $ hg qser
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
238 this-name-is-better
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
239 url.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
240
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
241 qimport -e --name with --force
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
242
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
243 $ hg qimport --force -e --name this-name-is-better 3.diff
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
244 renaming 3.diff to this-name-is-better
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
245 adding this-name-is-better to series file
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
246 $ hg qser
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
247 this-name-is-better
3177e3a7b14f tests: unify test-mq-qimport
Matt Mackall <mpm@selenic.com>
parents: 11701
diff changeset
248 url.diff
14395
dc961471efde mq: check patch name is valid before reading imported file
Idan Kamara <idankk86@gmail.com>
parents: 12642
diff changeset
249
31556
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
250 import patch of bad filename
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
251
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
252 $ touch '../ bad.diff'
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
253 $ hg qimport '../ bad.diff'
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
254 abort: patch name cannot begin or end with whitespace
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
255 [255]
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
256 $ touch '.hg/patches/ bad.diff'
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
257 $ hg qimport -e ' bad.diff'
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
258 abort: patch name cannot begin or end with whitespace
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
259 [255]
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
260
14395
dc961471efde mq: check patch name is valid before reading imported file
Idan Kamara <idankk86@gmail.com>
parents: 12642
diff changeset
261 qimport with bad name, should abort before reading file
dc961471efde mq: check patch name is valid before reading imported file
Idan Kamara <idankk86@gmail.com>
parents: 12642
diff changeset
262
17492
973c2b0b403c spelling: nonexistent
timeless@mozdev.org
parents: 17347
diff changeset
263 $ hg qimport non-existent-file --name .hg
14395
dc961471efde mq: check patch name is valid before reading imported file
Idan Kamara <idankk86@gmail.com>
parents: 12642
diff changeset
264 abort: patch name cannot begin with ".hg"
dc961471efde mq: check patch name is valid before reading imported file
Idan Kamara <idankk86@gmail.com>
parents: 12642
diff changeset
265 [255]
31556
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
266 $ hg qimport non-existent-file --name ' foo'
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
267 abort: patch name cannot begin or end with whitespace
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
268 [255]
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
269 $ hg qimport non-existent-file --name 'foo '
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
270 abort: patch name cannot begin or end with whitespace
448acdee9161 mq: reject new patch name containing leading/trailing whitespace
Yuya Nishihara <yuya@tcha.org>
parents: 29968
diff changeset
271 [255]
14396
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
272
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
273 qimport http:// patch with leading slashes in url
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
274
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
275 set up hgweb
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
276
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
277 $ cd ..
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
278 $ hg init served
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
279 $ cd served
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
280 $ echo a > a
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
281 $ hg ci -Am patch
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
282 adding a
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
283 $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
284 $ cat hg.pid >> $DAEMON_PIDS
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
285
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
286 $ cd ../repo
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
287 $ hg qimport http://localhost:$HGPORT/raw-rev/0///
170747a3e139 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com>
parents: 14395
diff changeset
288 adding 0 to series file
16027
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
289
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
290 check qimport phase:
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
291
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
292 $ hg -q qpush
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
293 now at: 0
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
294 $ hg phase qparent
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
295 1: draft
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
296 $ hg qimport -r qparent
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
297 $ hg phase qbase
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
298 1: draft
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
299 $ hg qfinish qbase
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
300 $ echo '[mq]' >> $HGRCPATH
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
301 $ echo 'secret=true' >> $HGRCPATH
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
302 $ hg qimport -r qparent
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
303 $ hg phase qbase
29ea059be33c qimport: when mq.secret=True set qimported revision as secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15934
diff changeset
304 1: secret
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16359
diff changeset
305
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16359
diff changeset
306 $ cd ..
17565
f62ed3d90377 tests: enable even more Windows server tests
Patrick Mezard <patrick@mezard.eu>
parents: 17492
diff changeset
307
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
308 $ killdaemons.py
27513
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
309
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
310 check patch name generation for non-alpha-numeric summary line
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
311
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
312 $ cd repo
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
313
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
314 $ hg qpop -a -q
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
315 patch queue now empty
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
316 $ hg qseries -v
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
317 0 U imported_patch_b_diff
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
318 1 U 0
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
319 2 U this-name-is-better
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
320 3 U url.diff
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
321
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
322 $ echo bb >> b
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
323 $ hg commit -m '==++--=='
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
324
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
325 $ hg qimport -r tip
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
326 $ hg qseries -v
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
327 0 A 1.diff
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
328 1 U imported_patch_b_diff
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
329 2 U 0
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
330 3 U this-name-is-better
707cdf2c3700 mq: use fallback patch name if no alpha-numeric in summary line (issue5025)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26736
diff changeset
331 4 U url.diff
27919
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
332
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
333 check reserved patch names
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
334
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
335 $ hg qpop -qa
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
336 patch queue now empty
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
337 $ echo >> b
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
338 $ hg commit -m 'status'
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
339 $ echo >> b
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
340 $ hg commit -m '.'
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
341 $ echo >> b
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
342 $ hg commit -m 'taken'
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
343 $ mkdir .hg/patches/taken
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
344 $ touch .hg/patches/taken__1
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
345 $ hg qimport -r -3::
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
346 $ hg qap
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
347 1.diff__1
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
348 2.diff
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
349 taken__2
db24d6888896 mq: check for reserved patch name with qimport -r (issue5033)
Mads Kiilerich <madski@unity3d.com>
parents: 27513
diff changeset
350
28388
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
351 check very long patch name
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
352
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
353 $ hg qpop -qa
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
354 patch queue now empty
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
355 $ echo >> b
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
356 $ hg commit -m 'abcdefghi pqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghi pqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghi pqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghi pqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghi pqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghi pqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
357 $ hg qimport -r .
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
358 $ hg qap
b1d35e2e1af6 mq: restrict generated patch name to 75 characters (issue5117)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27919
diff changeset
359 abcdefghi_pqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghi_pqrstuvwxyzabcdefg