From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: jca+emacs@wxcvbn.org (=?utf-8?Q?J=C3=A9r=C3=A9mie_Courr=C3=A8ges-Ang?= =?utf-8?Q?las?=) Newsgroups: gmane.emacs.devel Subject: Re: Google Summer of Code - some ideas Date: Mon, 22 Apr 2013 22:16:17 +0200 Message-ID: <87bo961fu6.fsf@moo.wxcvbn.org> References: <83d2tmxvz5.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1366662017 29079 80.91.229.3 (22 Apr 2013 20:20:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 22 Apr 2013 20:20:17 +0000 (UTC) Cc: =?utf-8?Q?Aur=C3=A9lien?= Aptel , monnier@iro.umontreal.ca, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Apr 22 22:20:21 2013 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 1UUNDn-0000iM-Fk for ged-emacs-devel@m.gmane.org; Mon, 22 Apr 2013 22:20:19 +0200 Original-Received: from localhost ([::1]:51593 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UUNDn-0001kC-1o for ged-emacs-devel@m.gmane.org; Mon, 22 Apr 2013 16:20:19 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:40792) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UUNDk-0001ja-2M for emacs-devel@gnu.org; Mon, 22 Apr 2013 16:20:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UUNDi-0006L7-IH for emacs-devel@gnu.org; Mon, 22 Apr 2013 16:20:16 -0400 Original-Received: from [2001:910:112c::a0a:4] (port=40311 helo=coloc.wxcvbn.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UUNDi-0006Jr-7d for emacs-devel@gnu.org; Mon, 22 Apr 2013 16:20:14 -0400 Original-Received: by coloc.wxcvbn.org (Postfix, from userid 10) id 7AAAB809C0; Mon, 22 Apr 2013 22:20:08 +0200 (CEST) Original-Received: from moo.wxcvbn.org (localhost [127.0.0.1]) by wxcvbn.org (8.14.7/8.14.7) with ESMTP id r3MKGIKW011687; Mon, 22 Apr 2013 22:16:18 +0200 (CEST) Original-Received: (from jca@localhost) by moo.wxcvbn.org (8.14.7/8.14.5/Submit) id r3MKGHXZ012770; Mon, 22 Apr 2013 22:16:17 +0200 (CEST) Mail-Followup-To: Eli Zaretskii , =?utf-8?Q?Aur=C3=A9lien?= Aptel , monnier@iro.umontreal.ca, emacs-devel@gnu.org In-Reply-To: <83d2tmxvz5.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 22 Apr 2013 21:26:38 +0300") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (berkeley-unix) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:910:112c::a0a:4 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:159131 Archived-At: Eli Zaretskii writes: >> Date: Mon, 22 Apr 2013 19:51:55 +0200 >> From: Aur=C3=A9lien Aptel >> Cc: Emacs development discussions >>=20 >> I understand. My project could then be: >>=20 >> - add support for compiled modules >> - rewrite libxml2 and libgnutls as modules > > libxml2 and GnuTLS are projects, not just libraries developed by Emacs > in-house. Rewriting them is probably a terrible waste of resources. > Perhaps you meant to write some kind of wrapper for them (if that is > needed, though I cannot see why). > > Why isn't dynamic loading the solution we want? I'm probably not knowledgeable enough about this subject, but... is it really easier to get this (raw dlopening) right? If my Emacs build dlopens gnutls with a major 39, and a few days later my system gets a 40th gnutls major version because of ABI change, then I will run into problems. And I can't count on my package tools dependancy system to notice the ABI change, unless I artificially encode the dependancy on gnutls or take care to bump my Emacs package to force a rebuild. Perhaps are there workarounds or methods to implement this safely in Emacs, but I fear that it would make life harder for some users and packagers. I don't know if libffi or GObject Introspection provide a way to solve this kind of problem, but if they do then that'd be way better, IMHO. Please correct me if my guesses are wrong. --=20 J=C3=A9r=C3=A9mie Courr=C3=A8ges-Anglas PGP Key fingerprint: 61DB D9A0 00A4 67CF 2A90 8961 6191 8FBF 06A1 1494