X-Git-Url: https://git.distorted.org.uk/~mdw/stgit/blobdiff_plain/b8d258e59a1e769d296526296bccb12c07d06f72..35344f865c199e8457d951bc51b45d21f813cbc2:/stgit/commands/mail.py diff --git a/stgit/commands/mail.py b/stgit/commands/mail.py index d758b9c..a8819b5 100644 --- a/stgit/commands/mail.py +++ b/stgit/commands/mail.py @@ -26,7 +26,7 @@ from stgit.config import config help = 'send a patch or series of patches by e-mail' -usage = """%prog [options] [] +usage = """%prog [options] [ [ 1: @@ -178,6 +186,7 @@ def __build_first(tmpl, total_nr, msg_id, options): tmpl_dict = {'maintainer': maintainer, 'endofheaders': headers_end, 'date': email.Utils.formatdate(localtime = True), + 'version': version_str, 'patchnr': patch_nr_str, 'totalnr': total_nr_str, 'number': number_str} @@ -221,6 +230,9 @@ def __build_message(tmpl, patch, patch_nr, total_nr, msg_id, ref_id, options): headers_end += "In-Reply-To: %s\n" % ref_id headers_end += "References: %s\n" % ref_id + if options.version: + version_str = ' %s' % options.version + total_nr_str = str(total_nr) patch_nr_str = str(patch_nr).zfill(len(total_nr_str)) if total_nr > 1: @@ -238,6 +250,7 @@ def __build_message(tmpl, patch, patch_nr, total_nr, msg_id, ref_id, options): 'diffstat': git.diffstat(rev1 = git_id('%s/bottom'%patch), rev2 = git_id('%s/top' % patch)), 'date': email.Utils.formatdate(localtime = True), + 'version': version_str, 'patchnr': patch_nr_str, 'totalnr': total_nr_str, 'number': number_str, @@ -265,9 +278,6 @@ def func(parser, options, args): """Send the patches by e-mail using the patchmail.tmpl file as a template """ - if len(args) > 1: - parser.error('incorrect number of arguments') - if not config.has_option('stgit', 'smtpserver'): raise CmdException, 'smtpserver not defined' smtpserver = config.get('stgit', 'smtpserver') @@ -281,11 +291,11 @@ def func(parser, options, args): applied = crt_series.get_applied() - if len(args) == 1: - if args[0] in applied: - patches = [args[0]] - else: - raise CmdException, 'Patch "%s" not applied' % args[0] + if len(args) >= 1: + for patch in args: + if not patch in applied: + raise CmdException, 'Patch "%s" not applied' % patch + patches = args elif options.all: patches = applied elif options.range: