All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Chiang <achiang@hp.com>
To: Karl Wiberg <kha@treskal.com>
Cc: catalin.marinas@gmail.com, git@vger.kernel.org
Subject: Re: [PATCH 5/6] stg mail: add basic support for git send-email
Date: Mon, 30 Nov 2009 17:00:48 -0700	[thread overview]
Message-ID: <20091201000048.GL12733@ldl.fc.hp.com> (raw)
In-Reply-To: <b8197bcb0911291354m674d3698m929a1d542a59ed9f@mail.gmail.com>

* Karl Wiberg <kha@treskal.com>:
> On Sat, Nov 28, 2009 at 8:50 PM, Alex Chiang <achiang@hp.com> wrote:
> 
> > +    # XXX: yuck, there's gotta be a more pythonic way. Ideally we'd like
> > +    # to use the git_opts dictionary as our mapping between stg mail and
> > +    # git send-email; extract k, v pairs from git_opts, and use those
> > +    # to iterate across options somehow.
> > +    git_opts = { 'to': '--to=', 'cc': '--cc=', 'bcc': '--bcc=' }
> > +    if options.to:
> > +        for a in options.to:
> > +            cmd.append("--to=%s" % a)
> > +    if options.cc:
> > +        for a in options.cc:
> > +            cmd.append("--cc=%s" % a)
> > +    if options.bcc:
> > +        for a in options.bcc:
> > +            cmd.append("--bcc=%s" % a)
> > +    if not options.auto:
> > +        cmd.append("--suppress-cc=body")
> 
> Like this?
> 
> for x in ['to', 'cc', 'bcc']:
>     if getattr(options, x):
>         cmd.extend('--%s=%s' % (x, a) for a in getattr(options, x))

Yeah, that looks nice. Re-implemented with your suggestion.

> > +    (fd, path) = mkstemp()
> > +    os.write(fd, msg.as_string(options.mbox))
> > +    os.close(fd)
> > +
> > +    try:
> > +        cmd.append(path)
> > +        call(cmd)
> > +    except Exception, err:
> > +        os.unlink(path)
> > +        raise CmdException, str(err)
> > +
> > +    os.unlink(path)
> 
> To avoid having to remember to call unlink in all paths, you can write
> 
> try:
>     try:
>         cmd.append(path)
>         call(cmd)
>     except Exception, e:
>         raise CmdException(str(e))
> finally:
>     os.unlink(path)
> 
> (The combined try...except...finally statement didn't appear until
> python 2.5, but we'd like to stay compatible with 2.4.)

This statement confuses me a bit. The way I read it, I shouldn't
use your suggestion due to compat reasons?

Thanks,
/ac

  reply	other threads:[~2009-12-01  0:00 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-28 19:50 [StGit RFC PATCH 0/6] add support for git send-email Alex Chiang
2009-11-28 19:50 ` [PATCH 1/6] stg mail: Refactor __send_message and friends Alex Chiang
2009-11-29  9:13   ` Karl Wiberg
2009-11-30 23:58     ` Alex Chiang
2009-11-28 19:50 ` [PATCH 2/6] stg mail: reorder __build_[message|cover] parameters Alex Chiang
2009-11-28 19:50 ` [PATCH 3/6] stg mail: make __send_message do more Alex Chiang
2009-11-29 21:23   ` Karl Wiberg
2009-11-30 23:59     ` Alex Chiang
2009-12-01  7:26       ` Karl Wiberg
2009-11-28 19:50 ` [PATCH 4/6] stg mail: factor out __update_header Alex Chiang
2009-11-28 19:50 ` [PATCH 5/6] stg mail: add basic support for git send-email Alex Chiang
2009-11-29 21:54   ` Karl Wiberg
2009-12-01  0:00     ` Alex Chiang [this message]
2009-12-01  7:33       ` Karl Wiberg
2009-11-28 19:50 ` [PATCH 6/6] stg mail: don't parse To/Cc/Bcc in --git mode Alex Chiang
2009-11-29 22:05 ` [StGit RFC PATCH 0/6] add support for git send-email Karl Wiberg
2009-12-01  0:02   ` Alex Chiang
2009-12-01  7:38     ` Karl Wiberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091201000048.GL12733@ldl.fc.hp.com \
    --to=achiang@hp.com \
    --cc=catalin.marinas@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=kha@treskal.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.