On Thu, 27 Jan 2011 14:49:43 +1000, Carl Worth <cworth@cworth.org> wrote: > On Wed, 26 Jan 2011 12:57:50 -0800, Jameson Rollins <jrollins@finestructure.net> wrote: > > The call-process to notmuch in notmuch-query.el was previously sending > > stderr into the output buffer. This means that if there is any stderr > > the JSON parsing breaks. Unfortunately call-process does not support > > sending stderr to a separate buffer or to the minibuffer [0], but it > > does support sending it to /dev/null. So we do that here instead. > > > > [0] a bug was filed against emacs (#7842) > > Thanks! I had wondered what those json errors were about. I've committed > this. > > I am a bit concerned about throwing the error output away, of course, > (so we'll wait for that fix to emacs---thanks for submitting a bug > report). Do you have a sense of what kinds of output we are getting on > stderr? So the only stderr output I've ever seen seen is in the signature-verification branch (which I now run). Emails with S/MIME signatures are currently not handled (because of GMIME limitations, I think) and notmuch throws the following error when trying to process them: servo:~ 0$ notmuch show --format=json --verify id:"4D25D062.1000103@sixdemonbag.org" >/dev/null Failed to verify signed part: no error explanation given servo:~ 0$ Obviously the emacs call-process function should be capturing and displaying those error messages. Hopefully we can eventually get that fixed. In the mean time it's probably better to throw out the messages rather than have them break the JSON output. jamie.