From: Pieter Praet <pieter@praet.org>
To: Austin Clements <amdragon@MIT.EDU>
Cc: notmuch@notmuchmail.org
Subject: Re: [PATCH] Output unmodified Content-Type header value for JSON format.
Date: Sat, 14 Jan 2012 10:19:33 +0100 [thread overview]
Message-ID: <87ehv2proa.fsf@praet.org> (raw)
In-Reply-To: <20120112172840.GC18625@mit.edu>
On Thu, 12 Jan 2012 12:28:40 -0500, Austin Clements <amdragon@MIT.EDU> wrote:
> Quoth Pieter Praet on Jan 12 at 6:07 pm:
> > On Tue, 22 Nov 2011 22:40:21 -0500, Austin Clements <amdragon@MIT.EDU> wrote:
> > > Quoth Jameson Graef Rollins on Nov 20 at 12:10 pm:
> > > > The open question seems to be how we handle the content encoding
> > > > parameters. My argument is that those should either be used by notmuch
> > > > to properly encode the content for the consumer. If that's not
> > > > possible, then just those parameters needed by the consumer to decode
> > > > the content should be output.
> > >
> > > If notmuch is going to include part content in the JSON output (which
> > > perhaps it shouldn't, as per recent IRC discussions), then it must
> > > handle content encodings because JSON must be Unicode and therefore
> > > the content strings in the JSON must be Unicode.
> >
> > Having missed the IRC discussions: what is the rationale for not
> > including (specific types of?) part content in the JSON output ?
> > Eg. how about inline attached text/x-patch ?
>
> Technically the IRC discussion was about not including *any* part
> content in the JSON output, and always using show --format=raw or
> similar to retrieve desired parts. Currently, notmuch includes part
> content in the JSON only for text/*, *except* when it's text/html. I
> assume non-text parts are omitted because binary data is hard to
> represent in JSON and text/html is omitted because some people don't
> need it. However, this leads to some peculiar asymmetry in the Emacs
> code where sometimes it pulls part content out of the JSON and
> sometimes it retrieves it using show --format=raw. This in turn leads
> to asymmetry in content encoding handling, since notmuch handles
> content encoding for parts included in the JSON (and there's no good
> way around that since JSON is Unicode), but not for parts retrieved as
> raw.
>
> The idea discussed on IRC was to remove all part content from the JSON
> output and to always use show to retrieve it, possibly beefing up
> show's support for content decoding (and possibly introducing a way to
> retrieve multiple raw parts at once to avoid re-parsing). This would
> get the JSON format out of the business of guessing what consumers
> need, simplify the Emacs code, and normalize content encoding
> handling.
Full ACK.
One concern though (IIUC): Due to the prevalence of retarded MUA's, not
outputting 'text/plain' and/or 'text/html' parts is unfortunately all
too often equivalent to not outputting anything at all, so wouldn't we,
in essence, be reducing `show --format=json' to an ever-so-slightly
augmented `search --format=json' ?
Peace
--
Pieter
next prev parent reply other threads:[~2012-01-14 9:21 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-18 23:45 [PATCH] Output unmodified Content-Type header value for JSON format Dmitry Kurochkin
2011-11-19 1:58 ` Jameson Graef Rollins
2011-11-19 2:42 ` Dmitry Kurochkin
2011-11-19 4:59 ` Austin Clements
2011-11-19 5:26 ` Dmitry Kurochkin
2011-11-19 18:58 ` Austin Clements
2011-11-20 18:52 ` Dmitry Kurochkin
2011-11-19 10:49 ` Jameson Graef Rollins
2011-11-20 18:32 ` Dmitry Kurochkin
2011-11-20 20:10 ` Jameson Graef Rollins
2011-11-23 3:40 ` Austin Clements
2012-01-12 17:07 ` Pieter Praet
2012-01-12 17:28 ` Austin Clements
2012-01-14 9:19 ` Pieter Praet [this message]
2012-01-15 11:52 ` David Edmondson
2012-01-15 17:58 ` Austin Clements
2012-01-16 8:49 ` David Edmondson
2012-01-16 13:18 ` Tomi Ollila
2011-11-19 4:18 ` [PATCH v2] " Dmitry Kurochkin
2011-11-19 12:59 ` David Bremner
2011-11-20 18:35 ` Dmitry Kurochkin
2012-01-12 17:08 ` Pieter Praet
2012-01-13 3:16 ` David Bremner
2012-01-14 8:59 ` Pieter Praet
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=87ehv2proa.fsf@praet.org \
--to=pieter@praet.org \
--cc=amdragon@MIT.EDU \
--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).