unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Austin Clements <amdragon@MIT.EDU>
To: Jameson Graef Rollins <jrollins@finestructure.net>
Cc: notmuch@notmuchmail.org
Subject: Re: [PATCH 5/5] show: Convert raw format to the new self-recursive style
Date: Tue, 6 Mar 2012 13:43:06 -0500	[thread overview]
Message-ID: <20120306184306.GA5457@mit.edu> (raw)
In-Reply-To: <87zkbxqr09.fsf@servo.finestructure.net>

TL;DR: I had a MIMEpiphany and I'm sending a new version of this
series that I think will address your concerns.

Quoth Jameson Graef Rollins on Mar 03 at  2:05 pm:
> Hey, Austin.  As always, thank you so much for your hard work on this
> rewrite.  It looks like things are definitely moving the right
> direction.
> 
> I haven't done a full review of this patch set, and I've been pretty out
> of the loop on this stuff recently, but I do notice that there are some
> changes to the tests that don't look right to me.
> 
> On Sat,  3 Mar 2012 00:20:25 -0500, Austin Clements <amdragon@MIT.EDU> wrote:
> > This is fully compatible for root and leaf parts, but drops support
> > for interior parts.  Showing interior parts in raw has always been
> > braindead broken, so I don't think anyone will miss this.  Tests have
> > been updated to reflect this.
> 
> I think I'm confused about this "drop support for interior parts".  What
> constitutes an "interior part"?  Aren't all parts interior?  It looks
> From the patch that maybe you're referring specifically to rfc822 parts?

Interior parts are any part that isn't a root part (the whole message)
or a leaf part.

I had originally planned to simply deprecate raw in favor of two new
formats: "body", which outputted just bodies with transfer decoding
(which, for rfc822 parts, would include the attached message headers,
but not the envelope headers) and "source", which outputted full parts
with headers.  I had been thinking that "source" would be necessary
for fetching the entire message and "body" for fetching attachments
and other leaf parts, but then it dawned on me that even trivial
messages have two parts already: part 0 is an rfc822 part representing
the whole message and part 1 is the body.  Hence, modulo specialty
uses like crypto, "body" was already sufficient for both uses *and*
compatible with "raw" for root and leaf parts.

I've updated my series to reflect this.  Raw now works for any part.

> >  test_begin_subtest "--format=raw --part=4, rfc822's html part"
> > -notmuch show --format=raw --part=4 'id:87liy5ap00.fsf@yoom.home.cworth.org' >OUTPUT
> > +notmuch show --format=raw --part=4 'id:87liy5ap00.fsf@yoom.home.cworth.org' >&OUTPUT
> >  cat <<EOF >EXPECTED
> > -<p>This is an embedded message, with a multipart/alternative part.</p>
> > -This is an embedded message, with a multipart/alternative part.
> > +Error: Raw only supports root and leaf parts
> >  EOF
> >  test_expect_equal_file OUTPUT EXPECTED
> 
> Maybe this is ultimately a limitation of what we can expect the raw
> formatter to do, but isn't this a leaf part?

Actually that was a typo in the test name.  Part 4 is a multipart, not
a leaf part.  The new series includes a patch for this.

  reply	other threads:[~2012-03-06 18:43 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-03  5:20 [PATCH 0/5] Rewrite mbox and raw show formats Austin Clements
2012-03-03  5:20 ` [PATCH 1/5] show: Allow formatters to return errors Austin Clements
2012-03-03  5:20 ` [PATCH 2/5] show: Move format_message_mbox with the other new-style formats Austin Clements
2012-03-03  5:20 ` [PATCH 3/5] show: Convert mbox format to new self-recursive style Austin Clements
2012-03-03  5:20 ` [PATCH 4/5] show: Move format_part_content_raw with the other new-style formats Austin Clements
2012-03-03  5:20 ` [PATCH 5/5] show: Convert raw format to the new self-recursive style Austin Clements
2012-03-03 22:05   ` Jameson Graef Rollins
2012-03-06 18:43     ` Austin Clements [this message]
2012-03-03  8:18 ` [PATCH 0/5] Rewrite mbox and raw show formats Tomi Ollila
2012-03-06 18:48 ` [PATCH v2 0/8] " Austin Clements
2012-03-06 18:48   ` [PATCH v2 1/8] test: Fix typo in test description Austin Clements
2012-03-06 18:48   ` [PATCH v2 2/8] test: Fix malformed multipart message Austin Clements
2012-03-06 18:48   ` [PATCH v2 3/8] show: Allow formatters to return errors Austin Clements
2012-03-06 21:22     ` Mark Walters
2012-03-07 20:18       ` Tomi Ollila
2012-03-11 23:34       ` Austin Clements
2012-03-06 18:48   ` [PATCH v2 4/8] show: Move format_message_mbox with the other new-style formats Austin Clements
2012-03-06 18:48   ` [PATCH v2 5/8] show: Convert mbox format to new self-recursive style Austin Clements
2012-03-06 18:48   ` [PATCH v2 6/8] show: Move format_part_content_raw with the other new-style formats Austin Clements
2012-03-06 18:48   ` [PATCH v2 7/8] show: Convert raw format to the new self-recursive style, properly support interior parts Austin Clements
2012-03-06 18:48   ` [PATCH v2 8/8] man: Update raw format documentation Austin Clements
2012-03-09  3:25   ` [PATCH v2 0/8] Rewrite mbox and raw show formats Adam Wolfe Gordon
2012-03-18 12:51   ` David Bremner

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

  List information: https://notmuchmail.org/

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

  git send-email \
    --in-reply-to=20120306184306.GA5457@mit.edu \
    --to=amdragon@mit.edu \
    --cc=jrollins@finestructure.net \
    --cc=notmuch@notmuchmail.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).