From: Justus Winter <4winter@informatik.uni-hamburg.de> Date: Thu, 23 Feb 2012 22:22:00 +0000 (+0100) Subject: Re: notmuch as a shared object aka library knigge X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=7776559a89c82939c46ab51078cb13f8a6c0c782;p=notmuch-archives.git Re: notmuch as a shared object aka library knigge --- diff --git a/26/13a231723c66b18a7c3959916d0af835ba022c b/26/13a231723c66b18a7c3959916d0af835ba022c new file mode 100644 index 000000000..809aa82f1 --- /dev/null +++ b/26/13a231723c66b18a7c3959916d0af835ba022c @@ -0,0 +1,101 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id EDFBF431FBC + for ; Thu, 23 Feb 2012 14:22:06 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: 0 +X-Spam-Level: +X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none] + autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id 5VNbAshjhK0I for ; + Thu, 23 Feb 2012 14:22:05 -0800 (PST) +Received: from mail.cryptobitch.de (cryptobitch.de [88.198.7.68]) + (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 119FE431FAE + for ; Thu, 23 Feb 2012 14:22:05 -0800 (PST) +Received: from mail.jade-hamburg.de (unknown [85.183.11.228]) + (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) + (No client certificate requested) + by mail.cryptobitch.de (Postfix) with ESMTPSA id 8CC20530E40 + for ; Thu, 23 Feb 2012 23:22:03 +0100 (CET) +Received: by mail.jade-hamburg.de (Postfix, from userid 401) + id D42CFDF2A9; Thu, 23 Feb 2012 23:22:02 +0100 (CET) +Received: from thinkbox.jade-hamburg.de + (dslb-088-075-032-221.pools.arcor-ip.net [88.75.32.221]) + (using TLSv1 with cipher AES256-SHA (256/256 bits)) + (No client certificate requested) (Authenticated sender: teythoon) + by mail.jade-hamburg.de (Postfix) with ESMTPSA id 14185DF2A7 + for ; Thu, 23 Feb 2012 23:22:01 +0100 (CET) +Received: from teythoon by thinkbox.jade-hamburg.de with local (Exim 4.77) + (envelope-from ) + id 1S0h32-0006XQ-Td + for notmuch@notmuchmail.org; Thu, 23 Feb 2012 23:22:00 +0100 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: quoted-printable +From: Justus Winter <4winter@informatik.uni-hamburg.de> +User-Agent: alot/0.21+ +To: notmuch mailing list +References: <20120221002921.8534.57091@thinkbox.jade-hamburg.de> + <20120221155312.GB30513@mit.edu> + <20120222151745.4213.93513@thinkbox.jade-hamburg.de> +In-Reply-To: <20120222151745.4213.93513@thinkbox.jade-hamburg.de> +Message-ID: <20120223222200.17796.11840@thinkbox.jade-hamburg.de> +Subject: Re: notmuch as a shared object aka library knigge +Date: Thu, 23 Feb 2012 23:22:00 +0100 +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Thu, 23 Feb 2012 22:22:07 -0000 + +Quoting Justus Winter (2012-02-22 16:17:45) +>Quoting Austin Clements (2012-02-21 16:53:12) +>>As always, patches welcome! +> +>Well, hacking on c code in my free time is not my idea of fun and I'm +>not familiar with the code base, so I'd appreciate it if someone who +>is in a better position to whip up a patch would step up and do so. + +That wasn't meant to sound as harsh as it probably did. I seriously +hope that someone is around who enjoys to hack on the c/c++ part of +the library and is willing fix problems in it. + +I've got a lot of ideas how to improve the python bindings and have +been refactoring it in the past few days. And while doing so I came +across a few problems in the library, one of which was so easy to fix +that I did just that. + +And I worked around the two functions (that I know of) that call +exit(3) by conditionally raising exceptions in the python bindings, +but this is only meant as a intermediate fix, a hack that should be +removed as soon as the library is fixed. + +But most of those problems require api changes and some kind of idea +on how to do this in a consistent and extensible way while hopefully +providing a smooth transition to the new api. And I don't feel that +I'm in a good position to do this (I know next to nothing about symbol +versions and linker magic) so I mentioned the problems and asked for +help on this issue. + +Btw, I think that we can keep the python api stable even if we change +the underlying library. So if there isn't actually anyone who directly +links against libnotmuch (maybe the mutt fork does?) we may not even +worry so much about api stability of libnotmuch. + +Happy hacking, +Justus