Re: [PATCH] emacs: hello: make --batch error gracefully
authorTomi Ollila <tomi.ollila@iki.fi>
Sat, 6 Jul 2013 09:06:22 +0000 (12:06 +0300)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 17:55:54 +0000 (09:55 -0800)
ce/7b6ad450945f667e4977555f0768ee857b8653 [new file with mode: 0644]

diff --git a/ce/7b6ad450945f667e4977555f0768ee857b8653 b/ce/7b6ad450945f667e4977555f0768ee857b8653
new file mode 100644 (file)
index 0000000..294a5be
--- /dev/null
@@ -0,0 +1,133 @@
+Return-Path: <tomi.ollila@iki.fi>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id D7586431FAF\r
+       for <notmuch@notmuchmail.org>; Sat,  6 Jul 2013 02:06:35 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: 0\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none]\r
+       autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id K9JY4+kpNyCA for <notmuch@notmuchmail.org>;\r
+       Sat,  6 Jul 2013 02:06:31 -0700 (PDT)\r
+Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34])\r
+       by olra.theworths.org (Postfix) with ESMTP id 91864431FAE\r
+       for <notmuch@notmuchmail.org>; Sat,  6 Jul 2013 02:06:31 -0700 (PDT)\r
+Received: from guru.guru-group.fi (localhost [IPv6:::1])\r
+       by guru.guru-group.fi (Postfix) with ESMTP id 0440B100051;\r
+       Sat,  6 Jul 2013 12:06:23 +0300 (EEST)\r
+From: Tomi Ollila <tomi.ollila@iki.fi>\r
+To: Mark Walters <markwalters1009@gmail.com>, notmuch@notmuchmail.org\r
+Subject: Re: [PATCH] emacs: hello: make --batch error gracefully\r
+In-Reply-To: <1372976299-30389-1-git-send-email-markwalters1009@gmail.com>\r
+References: <1372976299-30389-1-git-send-email-markwalters1009@gmail.com>\r
+User-Agent: Notmuch/0.15.2+193~g7350bd4 (http://notmuchmail.org) Emacs/24.3.1\r
+       (x86_64-unknown-linux-gnu)\r
+X-Face: HhBM'cA~<r"^Xv\KRN0P{vn'Y"Kd;zg_y3S[4)KSN~s?O\"QPoL\r
+       $[Xv_BD:i/F$WiEWax}R(MPS`^UaptOGD`*/=@\1lKoVa9tnrg0TW?"r7aRtgk[F\r
+       !)g;OY^,BjTbr)Np:%c_o'jj,Z\r
+Date: Sat, 06 Jul 2013 12:06:22 +0300\r
+Message-ID: <m2mwq0t5v5.fsf@guru.guru-group.fi>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sat, 06 Jul 2013 09:06:36 -0000\r
+\r
+On Fri, Jul 05 2013, Mark Walters <markwalters1009@gmail.com> wrote:\r
+\r
+> Recently notmuch-hello was converted to use batch count. However, it\r
+> seems that several people run different versions of notmuch-emacs and\r
+> notmuch-cli so this batch makes emacs fail with an error message if\r
+> --batch is not available in the CLI.\r
+> ---\r
+> There have been two cases on irc of people getting backtraces when\r
+> hitting this problem so it might be worth adding an informative error\r
+> message.\r
+\r
+This change takes care of the mismatching version problem now -- for\r
+a short while in most cases but in the future we might face with new\r
+incompabilities that would -- again -- need new solution. Some day\r
+we might have a pile of these who everyone is shy to remove from the\r
+code base ;/\r
+\r
+Although I am not against applying this patch (if there are supporters\r
+of this) I'd like to concentrate fixing this for example the following\r
+way:\r
+\r
+We'll add a global option to notmuch, e.g.\r
+\r
+--compatibility-version=x.y\r
+\r
+Whenever the caller chooses to use this option, notmuch checks whether\r
+it can comply with the option -- it it can, execution continues, otherwise \r
+aborts.\r
+\r
+The compatibility is determined so that the major 'x' needs to be same\r
+and caller may have lower 'y' that notmuch is capable of handling.\r
+\r
+For example. if notmuch compatibility version was 2.5\r
+\r
+--compatibility-version=1.9  --  abort\r
+--compatibility-version=2.3  --  continue\r
+--compatibility-version=2.5  --  continue\r
+--compatibility-version=2.8  --  abort\r
+--compatibility-version=3.1  --  abort\r
+\r
+\r
+I can work on this (or on something similar) if this is generally thought\r
+as a good idea...\r
+\r
+>\r
+> Best wishes\r
+>\r
+> Mark\r
+\r
+Tomi\r
+\r
+\r
+>\r
+>  emacs/notmuch-hello.el |    9 +++++++--\r
+>  1 files changed, 7 insertions(+), 2 deletions(-)\r
+>\r
+> diff --git a/emacs/notmuch-hello.el b/emacs/notmuch-hello.el\r
+> index 147c08c..fa46b7a 100644\r
+> --- a/emacs/notmuch-hello.el\r
+> +++ b/emacs/notmuch-hello.el\r
+> @@ -402,8 +402,13 @@ options will be handled as specified for\r
+>                                         (plist-get options :filter)))\r
+>       "\n")))\r
+>  \r
+> -    (call-process-region (point-min) (point-max) notmuch-command\r
+> -                     t t nil "count" "--batch")\r
+> +    (unless (= (call-process-region (point-min) (point-max) notmuch-command\r
+> +                                t t nil "count" "--batch") 0)\r
+> +      (notmuch-logged-error "notmuch CLI version mismatch error (count --batch)\r
+> +The most likely cause of this error is that the CLI is too old\r
+> +to support count --batch and needs to be upgraded to the same\r
+> +version as notmuch-emacs"))\r
+> +\r
+>      (goto-char (point-min))\r
+>  \r
+>      (notmuch-remove-if-not\r
+> -- \r
+> 1.7.9.1\r
+>\r
+> _______________________________________________\r
+> notmuch mailing list\r
+> notmuch@notmuchmail.org\r
+> http://notmuchmail.org/mailman/listinfo/notmuch\r