Show More
@@ -114,6 +114,12 b' HGHEADERS = [' | |||
|
114 | 114 | '# Node ID ', |
|
115 | 115 | '# Parent ', # can occur twice for merges - but that is not relevant for mq |
|
116 | 116 | ] |
|
117 | # The order of headers in plain 'mail style' patches: | |
|
118 | PLAINHEADERS = { | |
|
119 | 'from': 0, | |
|
120 | 'date': 1, | |
|
121 | 'subject': 2, | |
|
122 | } | |
|
117 | 123 | |
|
118 | 124 | def inserthgheader(lines, header, value): |
|
119 | 125 | """Assuming lines contains a HG patch header, add a header line with value. |
@@ -156,9 +162,40 b' def inserthgheader(lines, header, value)' | |||
|
156 | 162 | return lines |
|
157 | 163 | |
|
158 | 164 | def insertplainheader(lines, header, value): |
|
159 | if lines and lines[0] and ':' not in lines[0]: | |
|
160 | lines.insert(0, '') | |
|
161 | lines.insert(0, '%s: %s' % (header, value)) | |
|
165 | """For lines containing a plain patch header, add a header line with value. | |
|
166 | >>> insertplainheader([], 'Date', 'z') | |
|
167 | ['Date: z'] | |
|
168 | >>> insertplainheader([''], 'Date', 'z') | |
|
169 | ['Date: z', ''] | |
|
170 | >>> insertplainheader(['x'], 'Date', 'z') | |
|
171 | ['Date: z', '', 'x'] | |
|
172 | >>> insertplainheader(['From: y', 'x'], 'Date', 'z') | |
|
173 | ['From: y', 'Date: z', '', 'x'] | |
|
174 | >>> insertplainheader([' date : x', ' from : y', ''], 'From', 'z') | |
|
175 | [' date : x', 'From: z', ''] | |
|
176 | >>> insertplainheader(['', 'Date: y'], 'Date', 'z') | |
|
177 | ['Date: z', '', 'Date: y'] | |
|
178 | >>> insertplainheader(['foo: bar', 'DATE: z', 'x'], 'From', 'y') | |
|
179 | ['From: y', 'foo: bar', 'DATE: z', '', 'x'] | |
|
180 | """ | |
|
181 | newprio = PLAINHEADERS[header.lower()] | |
|
182 | bestpos = len(lines) | |
|
183 | for i, line in enumerate(lines): | |
|
184 | if ':' in line: | |
|
185 | lheader = line.split(':', 1)[0].strip().lower() | |
|
186 | lprio = PLAINHEADERS.get(lheader, newprio + 1) | |
|
187 | if lprio == newprio: | |
|
188 | lines[i] = '%s: %s' % (header, value) | |
|
189 | return lines | |
|
190 | if lprio > newprio and i < bestpos: | |
|
191 | bestpos = i | |
|
192 | else: | |
|
193 | if line: | |
|
194 | lines.insert(i, '') | |
|
195 | if i < bestpos: | |
|
196 | bestpos = i | |
|
197 | break | |
|
198 | lines.insert(bestpos, '%s: %s' % (header, value)) | |
|
162 | 199 | return lines |
|
163 | 200 | |
|
164 | 201 | class patchheader(object): |
@@ -412,8 +412,8 b'' | |||
|
412 | 412 | 1: Three (again) - test |
|
413 | 413 | 0: [mq]: 1.patch - test |
|
414 | 414 | ==== qref -d |
|
415 | From: jane | |
|
415 | 416 | Date: 12 0 |
|
416 | From: jane | |
|
417 | 417 | |
|
418 | 418 | diff -r ... 6 |
|
419 | 419 | --- /dev/null |
@@ -465,8 +465,8 b'' | |||
|
465 | 465 | 1: Three (again) - test |
|
466 | 466 | 0: [mq]: 1.patch - test |
|
467 | 467 | ==== qref -u -d |
|
468 | From: john | |
|
468 | 469 | Date: 14 0 |
|
469 | From: john | |
|
470 | 470 | |
|
471 | 471 | diff -r ... 8 |
|
472 | 472 | --- /dev/null |
@@ -495,8 +495,8 b'' | |||
|
495 | 495 | 1: Three (again) - test |
|
496 | 496 | 0: [mq]: 1.patch - test |
|
497 | 497 | ==== qref -u -d |
|
498 | From: john | |
|
498 | 499 | Date: 15 0 |
|
499 | From: john | |
|
500 | 500 | |
|
501 | 501 | Nine |
|
502 | 502 |
General Comments 0
You need to be logged in to leave comments.
Login now