[PATCH 5/8] lib: iterator API for message properties
[notmuch-archives.git] / 3d / 87eef67bf5af3dcbb4def43a947436685f9212
1 Return-Path: <teythoon@jade-hamburg.de>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id 90F46429E21\r
6         for <notmuch@notmuchmail.org>; Sun, 29 Jan 2012 10:01:28 -0800 (PST)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "Date"\r
9 X-Spam-Flag: NO\r
10 X-Spam-Score: 0.432\r
11 X-Spam-Level: \r
12 X-Spam-Status: No, score=0.432 tagged_above=-999 required=5\r
13         tests=[INVALID_DATE=0.432] autolearn=disabled\r
14 Received: from olra.theworths.org ([127.0.0.1])\r
15         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
16         with ESMTP id cm2sSpl98xc9 for <notmuch@notmuchmail.org>;\r
17         Sun, 29 Jan 2012 10:01:28 -0800 (PST)\r
18 Received: from mail.cryptobitch.de (cryptobitch.de [88.198.7.68])\r
19         (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))\r
20         (No client certificate requested)\r
21         by olra.theworths.org (Postfix) with ESMTPS id F1E34431E64\r
22         for <notmuch@notmuchmail.org>; Sun, 29 Jan 2012 10:01:27 -0800 (PST)\r
23 Received: from mail.jade-hamburg.de (unknown [85.183.11.228])\r
24         (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))\r
25         (No client certificate requested)\r
26         by mail.cryptobitch.de (Postfix) with ESMTPSA id CED8150FAE9\r
27         for <notmuch@notmuchmail.org>; Sun, 29 Jan 2012 19:01:26 +0100 (CET)\r
28 Received: by mail.jade-hamburg.de (Postfix, from userid 401)\r
29         id 32F25DF2A2; Sun, 29 Jan 2012 19:01:26 +0100 (CET)\r
30 Received: from thinkbox.jade-hamburg.de (unknown [10.1.1.109])\r
31         (using TLSv1 with cipher AES256-SHA (256/256 bits))\r
32         (No client certificate requested) (Authenticated sender: teythoon)\r
33         by mail.jade-hamburg.de (Postfix) with ESMTPSA id A1D60DF2A0\r
34         for <notmuch@notmuchmail.org>; Sun, 29 Jan 2012 19:01:25 +0100 (CET)\r
35 Received: from teythoon by thinkbox.jade-hamburg.de with local (Exim 4.77)\r
36         (envelope-from <teythoon@thinkbox.jade-hamburg.de>)\r
37         id 1RrZ48-0008Iz-WA\r
38         for notmuch@notmuchmail.org; Sun, 29 Jan 2012 19:01:25 +0100\r
39 Content-Type: text/plain; charset="utf-8"\r
40 MIME-Version: 1.0\r
41 Content-Transfer-Encoding: quoted-printable\r
42 From: Justus Winter <4winter@informatik.uni-hamburg.de>\r
43 User-Agent: alot/0.2-372-g8f06\r
44 To: notmuch mailing list      <notmuch@notmuchmail.org>, \r
45 Date: Sun, 29 Jan 2012 18:01:24 -0000\r
46 Message-ID: <20120129180124.23430.33656@thinkbox.jade-hamburg.de>\r
47 Subject: error handling and stderr\r
48 Date: Sun, 29 Jan 2012 19:01:24 +0100\r
49 X-BeenThere: notmuch@notmuchmail.org\r
50 X-Mailman-Version: 2.1.13\r
51 Precedence: list\r
52 List-Id: "Use and development of the notmuch mail system."\r
53         <notmuch.notmuchmail.org>\r
54 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
55         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
56 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
57 List-Post: <mailto:notmuch@notmuchmail.org>\r
58 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
59 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
60         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
61 X-List-Received-Date: Sun, 29 Jan 2012 18:01:28 -0000\r
62 \r
63 Hi notmuch developers,\r
64 \r
65 currently there is no way to determine why opening a database using\r
66 notmuch_database_open fails. I suppose that this is a problem for all\r
67 functions returning a pointer, but it is especially problematic for\r
68 this function since one cannot distinguish between a temporary failure\r
69 (someone else opened the db read/write) and a configuration problem\r
70 (wrong path).\r
71 \r
72 This is a real problem for providing sensible feedback to the user.\r
73 \r
74 And writing an error message to stderr is a sensible thing to do if it\r
75 is done in a command line utility but doing so within a library is a\r
76 severe problem for any curses frontends and is generally considered a\r
77 bad practice.\r
78 \r
79 For the record, libabcs README[0] agrees with me on both aspects.\r
80 \r
81 Since fixing this means breaking the api we need to discuss this\r
82 thoroughly and identify all the functions involved.\r
83 \r
84 Users of the python bindings won't be affected by an api change like\r
85 this since we're converting any error code to exceptions anyway.\r
86 \r
87 Cheers,\r
88 Justus\r
89 \r
90 0: https://git.kernel.org/?p=3Dlinux/kernel/git/kay/libabc.git;a=3Dblob_pla=\r
91 in;f=3DREADME\r