Show More
@@ -7,7 +7,7 b'' | |||||
7 |
|
7 | |||
8 | from i18n import _ |
|
8 | from i18n import _ | |
9 | import util, encoding |
|
9 | import util, encoding | |
10 | import os, smtplib, socket |
|
10 | import os, smtplib, socket, quopri | |
11 | import email.Header, email.MIMEText, email.Utils |
|
11 | import email.Header, email.MIMEText, email.Utils | |
12 |
|
12 | |||
13 | def _smtp(ui): |
|
13 | def _smtp(ui): | |
@@ -88,14 +88,31 b' def validateconfig(ui):' | |||||
88 |
|
88 | |||
89 | def mimetextpatch(s, subtype='plain', display=False): |
|
89 | def mimetextpatch(s, subtype='plain', display=False): | |
90 | '''If patch in utf-8 transfer-encode it.''' |
|
90 | '''If patch in utf-8 transfer-encode it.''' | |
|
91 | ||||
|
92 | enc = None | |||
|
93 | for line in s.splitlines(): | |||
|
94 | if len(line) > 950: | |||
|
95 | s = quopri.encodestring(s) | |||
|
96 | enc = "quoted-printable" | |||
|
97 | break | |||
|
98 | ||||
|
99 | cs = 'us-ascii' | |||
91 | if not display: |
|
100 | if not display: | |
92 | for cs in ('us-ascii', 'utf-8'): |
|
101 | try: | |
|
102 | s.decode('us-ascii') | |||
|
103 | except UnicodeDecodeError: | |||
93 | try: |
|
104 | try: | |
94 |
s.decode( |
|
105 | s.decode('utf-8') | |
95 | return email.MIMEText.MIMEText(s, subtype, cs) |
|
106 | cs = 'utf-8' | |
96 | except UnicodeDecodeError: |
|
107 | except UnicodeDecodeError: | |
|
108 | # We'll go with us-ascii as a fallback. | |||
97 | pass |
|
109 | pass | |
98 | return email.MIMEText.MIMEText(s, subtype) |
|
110 | ||
|
111 | msg = email.MIMEText.MIMEText(s, subtype, cs) | |||
|
112 | if enc: | |||
|
113 | del msg['Content-Transfer-Encoding'] | |||
|
114 | msg['Content-Transfer-Encoding'] = enc | |||
|
115 | return msg | |||
99 |
|
116 | |||
100 | def _charsets(ui): |
|
117 | def _charsets(ui): | |
101 | '''Obtains charsets to send mail parts not containing patches.''' |
|
118 | '''Obtains charsets to send mail parts not containing patches.''' |
@@ -58,7 +58,23 b' echo "% md5sum of 8-bit output"' | |||||
58 | $TESTDIR/md5sum.py mailtest |
|
58 | $TESTDIR/md5sum.py mailtest | |
59 | rm mailtest |
|
59 | rm mailtest | |
60 |
|
60 | |||
61 | echo "% mime encoded mbox" |
|
61 | echo "% mime encoded mbox (base64)" | |
|
62 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox | |||
|
63 | cat mbox | fixheaders | |||
|
64 | rm mbox | |||
|
65 | ||||
|
66 | echo "% mime encoded mbox (quoted-printable)" | |||
|
67 | python -c 'fp = open("qp", "wb"); fp.write("%s\nfoo\n\nbar\n" % \ | |||
|
68 | ("x" * 1024)); fp.close();' | |||
|
69 | hg commit -A -d '4 0' -m 'charset=utf-8; content-transfer-encoding: quoted-printable' | |||
|
70 | ||||
|
71 | echo "% no mime encoding for email --test" | |||
|
72 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -n | fixheaders > mailtest | |||
|
73 | echo "% md5sum of qp output" | |||
|
74 | $TESTDIR/md5sum.py mailtest | |||
|
75 | rm mailtest | |||
|
76 | ||||
|
77 | echo "% mime encoded mbox (quoted-printable)" | |||
62 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox |
|
78 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox | |
63 | cat mbox | fixheaders |
|
79 | cat mbox | fixheaders | |
64 | rm mbox |
|
80 | rm mbox | |
@@ -85,17 +101,25 b' echo "% test inline for single patch"' | |||||
85 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i 2 | \ |
|
101 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i 2 | \ | |
86 | fixheaders |
|
102 | fixheaders | |
87 |
|
103 | |||
|
104 | echo "% test inline for single patch (quoted-printable)" | |||
|
105 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i 4 | \ | |||
|
106 | fixheaders | |||
|
107 | ||||
88 | echo "% test inline for multiple patches" |
|
108 | echo "% test inline for multiple patches" | |
89 |
hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i |
|
109 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i \ | |
90 | fixheaders |
|
110 | -r 0:1 -r 4 | fixheaders | |
91 |
|
111 | |||
92 | echo "% test attach for single patch" |
|
112 | echo "% test attach for single patch" | |
93 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a 2 | \ |
|
113 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a 2 | \ | |
94 | fixheaders |
|
114 | fixheaders | |
95 |
|
115 | |||
|
116 | echo "% test attach for single patch (quoted-printable)" | |||
|
117 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a 4 | \ | |||
|
118 | fixheaders | |||
|
119 | ||||
96 | echo "% test attach for multiple patches" |
|
120 | echo "% test attach for multiple patches" | |
97 |
hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a |
|
121 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a \ | |
98 | fixheaders |
|
122 | -r 0:1 -r 4 | fixheaders | |
99 |
|
123 | |||
100 | echo "% test intro for single patch" |
|
124 | echo "% test intro for single patch" | |
101 | hg email --date '1970-1-1 0:1' -n --intro -f quux -t foo -c bar -s test 2 | \ |
|
125 | hg email --date '1970-1-1 0:1' -n --intro -f quux -t foo -c bar -s test 2 | \ |
@@ -158,7 +158,7 b' adding utf' | |||||
158 | % no mime encoding for email --test |
|
158 | % no mime encoding for email --test | |
159 | % md5sum of 8-bit output |
|
159 | % md5sum of 8-bit output | |
160 | e726c29b3008e77994c7572563e57c34 mailtest |
|
160 | e726c29b3008e77994c7572563e57c34 mailtest | |
161 | % mime encoded mbox |
|
161 | % mime encoded mbox (base64) | |
162 | This patch series consists of 1 patches. |
|
162 | This patch series consists of 1 patches. | |
163 |
|
163 | |||
164 |
|
164 | |||
@@ -188,6 +188,59 b' MCAxOTcwICswMDAwCisrKyBiL3V0ZglUaHUgSmFu' | |||||
188 | LTAsMCArMSwxIEBACitow7ZtbWEhCg== |
|
188 | LTAsMCArMSwxIEBACitow7ZtbWEhCg== | |
189 |
|
189 | |||
190 |
|
190 | |||
|
191 | % mime encoded mbox (quoted-printable) | |||
|
192 | adding qp | |||
|
193 | % no mime encoding for email --test | |||
|
194 | % md5sum of qp output | |||
|
195 | 0402c7d033e04044e423bb04816f9dae mailtest | |||
|
196 | % mime encoded mbox (quoted-printable) | |||
|
197 | This patch series consists of 1 patches. | |||
|
198 | ||||
|
199 | ||||
|
200 | Writing [PATCH] charset=utf-8; content-transfer-encoding: quoted-printable ... | |||
|
201 | From quux Thu Jan 01 00:04:01 1970 | |||
|
202 | Content-Type: text/plain; charset="us-ascii" | |||
|
203 | MIME-Version: 1.0 | |||
|
204 | Content-Transfer-Encoding: quoted-printable | |||
|
205 | Subject: [PATCH] charset=utf-8; content-transfer-encoding: quoted-printable | |||
|
206 | X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
207 | Message-Id: <c655633f8c87700bb38c.240@ | |||
|
208 | User-Agent: Mercurial-patchbomb | |||
|
209 | Date: Thu, 01 Jan 1970 00:04:00 +0000 | |||
|
210 | From: quux | |||
|
211 | To: foo | |||
|
212 | Cc: bar | |||
|
213 | ||||
|
214 | # HG changeset patch | |||
|
215 | # User test | |||
|
216 | # Date 4 0 | |||
|
217 | # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
218 | # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a | |||
|
219 | charset=3Dutf-8; content-transfer-encoding: quoted-printable | |||
|
220 | ||||
|
221 | diff -r c3c9e37db9f4 -r c655633f8c87 qp | |||
|
222 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | |||
|
223 | +++ b/qp Thu Jan 01 00:00:04 1970 +0000 | |||
|
224 | @@ -0,0 +1,4 @@ | |||
|
225 | +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
226 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
227 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
228 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
229 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
230 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
231 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
232 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
233 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
234 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
235 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
236 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
237 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
238 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | |||
|
239 | +foo | |||
|
240 | + | |||
|
241 | +bar | |||
|
242 | ||||
|
243 | ||||
191 | % iso-8859-1 patch |
|
244 | % iso-8859-1 patch | |
192 | adding isolatin |
|
245 | adding isolatin | |
193 | % fake ascii mbox |
|
246 | % fake ascii mbox | |
@@ -196,7 +249,7 b' This patch series consists of 1 patches.' | |||||
196 |
|
249 | |||
197 | Writing [PATCH] charset=us-ascii; content-transfer-encoding: 8bit ... |
|
250 | Writing [PATCH] charset=us-ascii; content-transfer-encoding: 8bit ... | |
198 | % md5sum of 8-bit output |
|
251 | % md5sum of 8-bit output | |
199 | 40190791e367a851e42f0887b2d9439e mboxfix |
|
252 | 9ea043d8fc43a71045114508baed144b mboxfix | |
200 | % test diffstat for single patch |
|
253 | % test diffstat for single patch | |
201 | This patch series consists of 1 patches. |
|
254 | This patch series consists of 1 patches. | |
202 |
|
255 | |||
@@ -376,18 +429,70 b' diff -r 97d72e5f12c7 -r ff2c9fa2018b c' | |||||
376 | +c |
|
429 | +c | |
377 |
|
430 | |||
378 | --=== |
|
431 | --=== | |
|
432 | % test inline for single patch (quoted-printable) | |||
|
433 | This patch series consists of 1 patches. | |||
|
434 | ||||
|
435 | ||||
|
436 | Displaying [PATCH] test ... | |||
|
437 | Content-Type: multipart/mixed; boundary="=== | |||
|
438 | MIME-Version: 1.0 | |||
|
439 | Subject: [PATCH] test | |||
|
440 | X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
441 | Message-Id: <c655633f8c87700bb38c.60@ | |||
|
442 | User-Agent: Mercurial-patchbomb | |||
|
443 | Date: Thu, 01 Jan 1970 00:01:00 +0000 | |||
|
444 | From: quux | |||
|
445 | To: foo | |||
|
446 | Cc: bar | |||
|
447 | ||||
|
448 | --=== | |||
|
449 | Content-Type: text/x-patch; charset="us-ascii" | |||
|
450 | MIME-Version: 1.0 | |||
|
451 | Content-Transfer-Encoding: quoted-printable | |||
|
452 | Content-Disposition: inline; filename=t2.patch | |||
|
453 | ||||
|
454 | # HG changeset patch | |||
|
455 | # User test | |||
|
456 | # Date 4 0 | |||
|
457 | # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
458 | # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a | |||
|
459 | charset=3Dutf-8; content-transfer-encoding: quoted-printable | |||
|
460 | ||||
|
461 | diff -r c3c9e37db9f4 -r c655633f8c87 qp | |||
|
462 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | |||
|
463 | +++ b/qp Thu Jan 01 00:00:04 1970 +0000 | |||
|
464 | @@ -0,0 +1,4 @@ | |||
|
465 | +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
466 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
467 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
468 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
469 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
470 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
471 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
472 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
473 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
474 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
475 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
476 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
477 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
478 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | |||
|
479 | +foo | |||
|
480 | + | |||
|
481 | +bar | |||
|
482 | ||||
|
483 | --=== | |||
379 | % test inline for multiple patches |
|
484 | % test inline for multiple patches | |
380 |
This patch series consists of |
|
485 | This patch series consists of 3 patches. | |
381 |
|
486 | |||
382 |
|
487 | |||
383 | Write the introductory message for the patch series. |
|
488 | Write the introductory message for the patch series. | |
384 |
|
489 | |||
385 |
|
490 | |||
386 |
Displaying [PATCH 0 of |
|
491 | Displaying [PATCH 0 of 3] test ... | |
387 | Content-Type: text/plain; charset="us-ascii" |
|
492 | Content-Type: text/plain; charset="us-ascii" | |
388 | MIME-Version: 1.0 |
|
493 | MIME-Version: 1.0 | |
389 | Content-Transfer-Encoding: 7bit |
|
494 | Content-Transfer-Encoding: 7bit | |
390 |
Subject: [PATCH 0 of |
|
495 | Subject: [PATCH 0 of 3] test | |
391 | Message-Id: <patchbomb.60@ |
|
496 | Message-Id: <patchbomb.60@ | |
392 | User-Agent: Mercurial-patchbomb |
|
497 | User-Agent: Mercurial-patchbomb | |
393 | Date: Thu, 01 Jan 1970 00:01:00 +0000 |
|
498 | Date: Thu, 01 Jan 1970 00:01:00 +0000 | |
@@ -396,10 +501,10 b' To: foo' | |||||
396 | Cc: bar |
|
501 | Cc: bar | |
397 |
|
502 | |||
398 |
|
503 | |||
399 |
Displaying [PATCH 1 of |
|
504 | Displaying [PATCH 1 of 3] a ... | |
400 | Content-Type: multipart/mixed; boundary="=== |
|
505 | Content-Type: multipart/mixed; boundary="=== | |
401 | MIME-Version: 1.0 |
|
506 | MIME-Version: 1.0 | |
402 |
Subject: [PATCH 1 of |
|
507 | Subject: [PATCH 1 of 3] a | |
403 | X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab |
|
508 | X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab | |
404 | Message-Id: <8580ff50825a50c8f716.61@ |
|
509 | Message-Id: <8580ff50825a50c8f716.61@ | |
405 | In-Reply-To: <patchbomb.60@ |
|
510 | In-Reply-To: <patchbomb.60@ | |
@@ -430,10 +535,10 b' diff -r 000000000000 -r 8580ff50825a a' | |||||
430 | +a |
|
535 | +a | |
431 |
|
536 | |||
432 | --=== |
|
537 | --=== | |
433 |
Displaying [PATCH 2 of |
|
538 | Displaying [PATCH 2 of 3] b ... | |
434 | Content-Type: multipart/mixed; boundary="=== |
|
539 | Content-Type: multipart/mixed; boundary="=== | |
435 | MIME-Version: 1.0 |
|
540 | MIME-Version: 1.0 | |
436 |
Subject: [PATCH 2 of |
|
541 | Subject: [PATCH 2 of 3] b | |
437 | X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 |
|
542 | X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 | |
438 | Message-Id: <97d72e5f12c7e84f8506.62@ |
|
543 | Message-Id: <97d72e5f12c7e84f8506.62@ | |
439 | In-Reply-To: <patchbomb.60@ |
|
544 | In-Reply-To: <patchbomb.60@ | |
@@ -464,6 +569,57 b' diff -r 8580ff50825a -r 97d72e5f12c7 b' | |||||
464 | +b |
|
569 | +b | |
465 |
|
570 | |||
466 | --=== |
|
571 | --=== | |
|
572 | Displaying [PATCH 3 of 3] charset=utf-8; content-transfer-encoding: quoted-printable ... | |||
|
573 | Content-Type: multipart/mixed; boundary="=== | |||
|
574 | MIME-Version: 1.0 | |||
|
575 | Subject: [PATCH 3 of 3] charset=utf-8; | |||
|
576 | content-transfer-encoding: quoted-printable | |||
|
577 | X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
578 | Message-Id: <c655633f8c87700bb38c.63@ | |||
|
579 | In-Reply-To: <patchbomb.60@ | |||
|
580 | References: <patchbomb.60@ | |||
|
581 | User-Agent: Mercurial-patchbomb | |||
|
582 | Date: Thu, 01 Jan 1970 00:01:03 +0000 | |||
|
583 | From: quux | |||
|
584 | To: foo | |||
|
585 | Cc: bar | |||
|
586 | ||||
|
587 | --=== | |||
|
588 | Content-Type: text/x-patch; charset="us-ascii" | |||
|
589 | MIME-Version: 1.0 | |||
|
590 | Content-Transfer-Encoding: quoted-printable | |||
|
591 | Content-Disposition: inline; filename=t2-3.patch | |||
|
592 | ||||
|
593 | # HG changeset patch | |||
|
594 | # User test | |||
|
595 | # Date 4 0 | |||
|
596 | # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
597 | # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a | |||
|
598 | charset=3Dutf-8; content-transfer-encoding: quoted-printable | |||
|
599 | ||||
|
600 | diff -r c3c9e37db9f4 -r c655633f8c87 qp | |||
|
601 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | |||
|
602 | +++ b/qp Thu Jan 01 00:00:04 1970 +0000 | |||
|
603 | @@ -0,0 +1,4 @@ | |||
|
604 | +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
605 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
606 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
607 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
608 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
609 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
610 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
611 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
612 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
613 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
614 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
615 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
616 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
617 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | |||
|
618 | +foo | |||
|
619 | + | |||
|
620 | +bar | |||
|
621 | ||||
|
622 | --=== | |||
467 | % test attach for single patch |
|
623 | % test attach for single patch | |
468 | This patch series consists of 1 patches. |
|
624 | This patch series consists of 1 patches. | |
469 |
|
625 | |||
@@ -509,18 +665,79 b' diff -r 97d72e5f12c7 -r ff2c9fa2018b c' | |||||
509 | +c |
|
665 | +c | |
510 |
|
666 | |||
511 | --=== |
|
667 | --=== | |
|
668 | % test attach for single patch (quoted-printable) | |||
|
669 | This patch series consists of 1 patches. | |||
|
670 | ||||
|
671 | ||||
|
672 | Displaying [PATCH] test ... | |||
|
673 | Content-Type: multipart/mixed; boundary="=== | |||
|
674 | MIME-Version: 1.0 | |||
|
675 | Subject: [PATCH] test | |||
|
676 | X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
677 | Message-Id: <c655633f8c87700bb38c.60@ | |||
|
678 | User-Agent: Mercurial-patchbomb | |||
|
679 | Date: Thu, 01 Jan 1970 00:01:00 +0000 | |||
|
680 | From: quux | |||
|
681 | To: foo | |||
|
682 | Cc: bar | |||
|
683 | ||||
|
684 | --=== | |||
|
685 | Content-Type: text/plain; charset="us-ascii" | |||
|
686 | MIME-Version: 1.0 | |||
|
687 | Content-Transfer-Encoding: 7bit | |||
|
688 | ||||
|
689 | Patch subject is complete summary. | |||
|
690 | ||||
|
691 | ||||
|
692 | ||||
|
693 | --=== | |||
|
694 | Content-Type: text/x-patch; charset="us-ascii" | |||
|
695 | MIME-Version: 1.0 | |||
|
696 | Content-Transfer-Encoding: quoted-printable | |||
|
697 | Content-Disposition: attachment; filename=t2.patch | |||
|
698 | ||||
|
699 | # HG changeset patch | |||
|
700 | # User test | |||
|
701 | # Date 4 0 | |||
|
702 | # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
703 | # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a | |||
|
704 | charset=3Dutf-8; content-transfer-encoding: quoted-printable | |||
|
705 | ||||
|
706 | diff -r c3c9e37db9f4 -r c655633f8c87 qp | |||
|
707 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | |||
|
708 | +++ b/qp Thu Jan 01 00:00:04 1970 +0000 | |||
|
709 | @@ -0,0 +1,4 @@ | |||
|
710 | +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
711 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
712 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
713 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
714 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
715 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
716 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
717 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
718 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
719 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
720 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
721 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
722 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
723 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | |||
|
724 | +foo | |||
|
725 | + | |||
|
726 | +bar | |||
|
727 | ||||
|
728 | --=== | |||
512 | % test attach for multiple patches |
|
729 | % test attach for multiple patches | |
513 |
This patch series consists of |
|
730 | This patch series consists of 3 patches. | |
514 |
|
731 | |||
515 |
|
732 | |||
516 | Write the introductory message for the patch series. |
|
733 | Write the introductory message for the patch series. | |
517 |
|
734 | |||
518 |
|
735 | |||
519 |
Displaying [PATCH 0 of |
|
736 | Displaying [PATCH 0 of 3] test ... | |
520 | Content-Type: text/plain; charset="us-ascii" |
|
737 | Content-Type: text/plain; charset="us-ascii" | |
521 | MIME-Version: 1.0 |
|
738 | MIME-Version: 1.0 | |
522 | Content-Transfer-Encoding: 7bit |
|
739 | Content-Transfer-Encoding: 7bit | |
523 |
Subject: [PATCH 0 of |
|
740 | Subject: [PATCH 0 of 3] test | |
524 | Message-Id: <patchbomb.60@ |
|
741 | Message-Id: <patchbomb.60@ | |
525 | User-Agent: Mercurial-patchbomb |
|
742 | User-Agent: Mercurial-patchbomb | |
526 | Date: Thu, 01 Jan 1970 00:01:00 +0000 |
|
743 | Date: Thu, 01 Jan 1970 00:01:00 +0000 | |
@@ -529,10 +746,10 b' To: foo' | |||||
529 | Cc: bar |
|
746 | Cc: bar | |
530 |
|
747 | |||
531 |
|
748 | |||
532 |
Displaying [PATCH 1 of |
|
749 | Displaying [PATCH 1 of 3] a ... | |
533 | Content-Type: multipart/mixed; boundary="=== |
|
750 | Content-Type: multipart/mixed; boundary="=== | |
534 | MIME-Version: 1.0 |
|
751 | MIME-Version: 1.0 | |
535 |
Subject: [PATCH 1 of |
|
752 | Subject: [PATCH 1 of 3] a | |
536 | X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab |
|
753 | X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab | |
537 | Message-Id: <8580ff50825a50c8f716.61@ |
|
754 | Message-Id: <8580ff50825a50c8f716.61@ | |
538 | In-Reply-To: <patchbomb.60@ |
|
755 | In-Reply-To: <patchbomb.60@ | |
@@ -572,10 +789,10 b' diff -r 000000000000 -r 8580ff50825a a' | |||||
572 | +a |
|
789 | +a | |
573 |
|
790 | |||
574 | --=== |
|
791 | --=== | |
575 |
Displaying [PATCH 2 of |
|
792 | Displaying [PATCH 2 of 3] b ... | |
576 | Content-Type: multipart/mixed; boundary="=== |
|
793 | Content-Type: multipart/mixed; boundary="=== | |
577 | MIME-Version: 1.0 |
|
794 | MIME-Version: 1.0 | |
578 |
Subject: [PATCH 2 of |
|
795 | Subject: [PATCH 2 of 3] b | |
579 | X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 |
|
796 | X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 | |
580 | Message-Id: <97d72e5f12c7e84f8506.62@ |
|
797 | Message-Id: <97d72e5f12c7e84f8506.62@ | |
581 | In-Reply-To: <patchbomb.60@ |
|
798 | In-Reply-To: <patchbomb.60@ | |
@@ -615,6 +832,66 b' diff -r 8580ff50825a -r 97d72e5f12c7 b' | |||||
615 | +b |
|
832 | +b | |
616 |
|
833 | |||
617 | --=== |
|
834 | --=== | |
|
835 | Displaying [PATCH 3 of 3] charset=utf-8; content-transfer-encoding: quoted-printable ... | |||
|
836 | Content-Type: multipart/mixed; boundary="=== | |||
|
837 | MIME-Version: 1.0 | |||
|
838 | Subject: [PATCH 3 of 3] charset=utf-8; | |||
|
839 | content-transfer-encoding: quoted-printable | |||
|
840 | X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
841 | Message-Id: <c655633f8c87700bb38c.63@ | |||
|
842 | In-Reply-To: <patchbomb.60@ | |||
|
843 | References: <patchbomb.60@ | |||
|
844 | User-Agent: Mercurial-patchbomb | |||
|
845 | Date: Thu, 01 Jan 1970 00:01:03 +0000 | |||
|
846 | From: quux | |||
|
847 | To: foo | |||
|
848 | Cc: bar | |||
|
849 | ||||
|
850 | --=== | |||
|
851 | Content-Type: text/plain; charset="us-ascii" | |||
|
852 | MIME-Version: 1.0 | |||
|
853 | Content-Transfer-Encoding: 7bit | |||
|
854 | ||||
|
855 | Patch subject is complete summary. | |||
|
856 | ||||
|
857 | ||||
|
858 | ||||
|
859 | --=== | |||
|
860 | Content-Type: text/x-patch; charset="us-ascii" | |||
|
861 | MIME-Version: 1.0 | |||
|
862 | Content-Transfer-Encoding: quoted-printable | |||
|
863 | Content-Disposition: attachment; filename=t2-3.patch | |||
|
864 | ||||
|
865 | # HG changeset patch | |||
|
866 | # User test | |||
|
867 | # Date 4 0 | |||
|
868 | # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 | |||
|
869 | # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a | |||
|
870 | charset=3Dutf-8; content-transfer-encoding: quoted-printable | |||
|
871 | ||||
|
872 | diff -r c3c9e37db9f4 -r c655633f8c87 qp | |||
|
873 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | |||
|
874 | +++ b/qp Thu Jan 01 00:00:04 1970 +0000 | |||
|
875 | @@ -0,0 +1,4 @@ | |||
|
876 | +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
877 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
878 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
879 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
880 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
881 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
882 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
883 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
884 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
885 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
886 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
887 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
888 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= | |||
|
889 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | |||
|
890 | +foo | |||
|
891 | + | |||
|
892 | +bar | |||
|
893 | ||||
|
894 | --=== | |||
618 | % test intro for single patch |
|
895 | % test intro for single patch | |
619 | This patch series consists of 1 patches. |
|
896 | This patch series consists of 1 patches. | |
620 |
|
897 | |||
@@ -873,8 +1150,8 b' Content-Type: text/plain; charset="us-as' | |||||
873 | MIME-Version: 1.0 |
|
1150 | MIME-Version: 1.0 | |
874 | Content-Transfer-Encoding: 7bit |
|
1151 | Content-Transfer-Encoding: 7bit | |
875 | Subject: [PATCH] Added tag two, two.diff for changeset ff2c9fa2018b |
|
1152 | Subject: [PATCH] Added tag two, two.diff for changeset ff2c9fa2018b | |
876 | X-Mercurial-Node: 2c502b2db30e1ddd5e4ecabd68d9002f6c77a5a3 |
|
1153 | X-Mercurial-Node: e317db6a6f288748d1f6cb064f3810fcba66b1b6 | |
877 | Message-Id: <2c502b2db30e1ddd5e4e.60@ |
|
1154 | Message-Id: <e317db6a6f288748d1f6.60@ | |
878 | In-Reply-To: baz |
|
1155 | In-Reply-To: baz | |
879 | References: baz |
|
1156 | References: baz | |
880 | User-Agent: Mercurial-patchbomb |
|
1157 | User-Agent: Mercurial-patchbomb | |
@@ -886,11 +1163,11 b' Cc: bar' | |||||
886 | # HG changeset patch |
|
1163 | # HG changeset patch | |
887 | # User test |
|
1164 | # User test | |
888 | # Date 0 0 |
|
1165 | # Date 0 0 | |
889 | # Node ID 2c502b2db30e1ddd5e4ecabd68d9002f6c77a5a3 |
|
1166 | # Node ID e317db6a6f288748d1f6cb064f3810fcba66b1b6 | |
890 | # Parent 91c0d1bdb4bc9cfd3b38a53a5ec53e9ae412a275 |
|
1167 | # Parent eae5fcf795eee29d0e45ffc9f519a91cd79fc9ff | |
891 | Added tag two, two.diff for changeset ff2c9fa2018b |
|
1168 | Added tag two, two.diff for changeset ff2c9fa2018b | |
892 |
|
1169 | |||
893 | diff -r 91c0d1bdb4bc -r 2c502b2db30e .hgtags |
|
1170 | diff -r eae5fcf795ee -r e317db6a6f28 .hgtags | |
894 | --- a/.hgtags Thu Jan 01 00:00:00 1970 +0000 |
|
1171 | --- a/.hgtags Thu Jan 01 00:00:00 1970 +0000 | |
895 | +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 |
|
1172 | +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 | |
896 | @@ -2,3 +2,5 @@ |
|
1173 | @@ -2,3 +2,5 @@ |
General Comments 0
You need to be logged in to leave comments.
Login now