On Sat, Nov 28, 2009 at 8:50 PM, Alex Chiang <achiang@xxxxxx> wrote: > Factor out the common code required to send either a cover mail > or patch, and implement it in __send_message. Nice code size reduction. > + msg_id = email.Utils.make_msgid('stgit') > + build = { 1: __build_cover, 4: __build_message } > + msg = build[len(args)](tmpl, msg_id, options, *args) > + > + from_addr, to_addrs = __parse_addresses(msg) > + msg_str = msg.as_string(options.mbox) > + if options.mbox: > + out.stdout_raw(msg_str + '\n') > + return msg_id > + > + outstr = { 1: 'the cover message', 4: 'patch "%s"' % args[0] } > + out.start('Sending ' + outstr[len(args)]) You could consolidate the two dictionaries like this, to avoid making the same choice twice and make the code more pleasant to read: (build, outstr) = { 1: (__build_cover, 'the cover message'), 4: (__build_message, 'patch "%s"' % args[0]) } > + # give recipients a chance of receiving related patches in correct order > + # patch_nr < total_nr > + if len(args) == 1 or (len(args) == 4 and args[1] < args[2]): > + sleep = options.sleep or config.getint('stgit.smtpdelay') > + time.sleep(sleep) Hmm. I must say I find all the args[x] a bit hard to read. I'd prefer symbolic names. -- Karl Wiberg, kha@xxxxxxxxxxx subrabbit.wordpress.com www.treskal.com/kalle -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html