From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: joakim@verona.se Newsgroups: gmane.emacs.devel Subject: Re: SQLite interface Date: Thu, 13 Mar 2014 11:26:08 +0100 Message-ID: References: <87zjku76nk.fsf@mid.deneb.enyo.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1394706387 24387 80.91.229.3 (13 Mar 2014 10:26:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 13 Mar 2014 10:26:27 +0000 (UTC) Cc: emacs-devel@gnu.org To: Florian Weimer Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Mar 13 11:26:36 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WO2qP-0001N9-Mi for ged-emacs-devel@m.gmane.org; Thu, 13 Mar 2014 11:26:33 +0100 Original-Received: from localhost ([::1]:38008 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WO2qP-00075y-9H for ged-emacs-devel@m.gmane.org; Thu, 13 Mar 2014 06:26:33 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43735) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WO2qF-00074f-VJ for emacs-devel@gnu.org; Thu, 13 Mar 2014 06:26:30 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WO2q8-0003dY-TL for emacs-devel@gnu.org; Thu, 13 Mar 2014 06:26:23 -0400 Original-Received: from mx1.bahnhof.se ([213.80.101.11]:30848) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WO2q8-0003cq-N1 for emacs-devel@gnu.org; Thu, 13 Mar 2014 06:26:16 -0400 Original-Received: from localhost (mf.bahnhof.se [213.80.101.20]) by mx1-reinject (Postfix) with ESMTP id 35F028AC507; Thu, 13 Mar 2014 11:26:14 +0100 (CET) X-Virus-Scanned: by amavisd-new using ClamAV at bahnhof.se (MF4) Original-Received: from mf4.bahnhof.se ([127.0.0.1]) by localhost (mf4.bahnhof.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KQb1XJJMddWQ; Thu, 13 Mar 2014 11:26:11 +0100 (CET) Original-Received: from mta.verona.se (h-235-102.a149.priv.bahnhof.se [85.24.235.102]) by mf4.bahnhof.se (Postfix) with ESMTP id E4D833D784B; Thu, 13 Mar 2014 11:26:10 +0100 (CET) Original-Received: from localhost (unknown [127.0.0.1]) by mta.verona.se (Postfix) with ESMTP id AD7694F64C6; Thu, 13 Mar 2014 10:26:09 +0000 (UTC) X-Virus-Scanned: amavisd-new at verona.se Original-Received: from mta.verona.se ([127.0.0.1]) by localhost (exodia.verona.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iBWTKE1ubaP4; Thu, 13 Mar 2014 11:26:08 +0100 (CET) Original-Received: from exodia.verona.se (www.verona.se [192.168.200.15]) by mta.verona.se (Postfix) with ESMTP id 9C3D74F64BA; Thu, 13 Mar 2014 11:26:08 +0100 (CET) In-Reply-To: <87zjku76nk.fsf@mid.deneb.enyo.de> (Florian Weimer's message of "Thu, 13 Mar 2014 11:08:15 +0100") User-Agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Mac OS X 10.x X-Received-From: 213.80.101.11 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:170310 Archived-At: Florian Weimer writes: > Would a patch that exposes the SQLite C API at the Lisp level be > acceptable for inclusion in Emacs, or is this not a good idea because > SQLite is public domain software outside of the GNU project? > > I would like to use SQLite to speed up updating the overview files in > the nnml backend for Gnus. I have some folders where these files are > several hundred megabytes large, and they are rewritten from scratch > each time new mail is received. So far, I've thrown hardware at the > problem, but that's becoming less and less cost-effective. > Another aproach is to work with a FFI interface in Emacs to expose libraries such as sqlite. There are however various opinions on FFI interfaces for emacs. My personal opinion is that GObject introspection is a nice aproach for Emacs to gain FFI abilities. I have a preliminary patch for GObject introspection support in the Emacs Xwidget branch. There is a Gobject wrapper for sqlite https://code.google.com/p/sqlheavy/ If you are interested in exploring this avenue, I will be happy to assist. -- Joakim Verona