--- a/hgext/patchbomb.py Fri Dec 17 12:05:45 2010 +0000
+++ b/hgext/patchbomb.py Tue Dec 21 19:44:28 2010 +0900
@@ -193,6 +193,9 @@
PAGER environment variable is set, your pager will be fired up once
for each patchbomb message, so you can verify everything is alright.
+ In case email sending fails, you will find a backup of your series
+ introductory message in ``.hg/last-email.txt``.
+
Examples::
hg email -r 3000 # send patch 3000 only
@@ -309,6 +312,10 @@
ui.write(_('\nWrite the introductory message for the '
'patch series.\n\n'))
body = ui.edit(body, sender)
+ # Save serie description in case sendmail fails
+ msgfile = repo.opener('last-email.txt', 'wb')
+ msgfile.write(body)
+ msgfile.close()
return body
def getpatchmsgs(patches, patchnames=None):
--- a/tests/test-patchbomb.t Fri Dec 17 12:05:45 2010 +0000
+++ b/tests/test-patchbomb.t Tue Dec 21 19:44:28 2010 +0900
@@ -145,6 +145,17 @@
+b
+.hg/last-email.txt
+
+ $ cat > editor << '__EOF__'
+ > #!/bin/sh
+ > echo "a precious introductory message" > "$1"
+ > __EOF__
+ $ chmod +x editor
+ $ HGEDITOR="'`pwd`'"/editor hg email -n -t foo -s test -r 0:tip > /dev/null
+ $ cat .hg/last-email.txt
+ a precious introductory message
+
$ hg email -m test.mbox -f quux -t foo -c bar -s test 0:tip \
> --config extensions.progress= --config progress.assume-tty=1 \
> --config progress.delay=0 --config progress.refresh=0