From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [ELPA] Package proposal: EBDB Date: Tue, 15 Aug 2017 03:49:11 -0400 Message-ID: References: <87efsxspgv.fsf@ericabrahamsen.net> <87mv784f1h.fsf@ericabrahamsen.net> <87shgwgtyp.fsf@ericabrahamsen.net> <87shgux6s1.fsf@ericabrahamsen.net> <87mv722l8s.fsf@ericabrahamsen.net> <87zib1675t.fsf@ericabrahamsen.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1502783428 27323 195.159.176.226 (15 Aug 2017 07:50:28 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 15 Aug 2017 07:50:28 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Aug 15 09:50:20 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dhWc9-0006Hu-Rq for ged-emacs-devel@m.gmane.org; Tue, 15 Aug 2017 09:50:13 +0200 Original-Received: from localhost ([::1]:44575 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dhWcG-0006T9-9M for ged-emacs-devel@m.gmane.org; Tue, 15 Aug 2017 03:50:20 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:39329) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dhWbN-0006QG-T0 for emacs-devel@gnu.org; Tue, 15 Aug 2017 03:49:26 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dhWbK-0007rY-Mn for emacs-devel@gnu.org; Tue, 15 Aug 2017 03:49:25 -0400 Original-Received: from [195.159.176.226] (port=54092 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dhWbK-0007pg-GT for emacs-devel@gnu.org; Tue, 15 Aug 2017 03:49:22 -0400 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1dhWb8-0002qi-Sg for emacs-devel@gnu.org; Tue, 15 Aug 2017 09:49:10 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 38 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:Id94tLxWJ/gwa9x8vROpk131gsA= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:217559 Archived-At: > Huh, interesting. Is that function completely deprecated, or still > usable for class-allocated slots? It's fine for class-allocated slots. >> - ebdb-vm and ebdb-mu4e will break the compilation of the package if the >> user doesn't have VM and mu4e installed. >> The appended patch tries to fix those two, but please take a look at it >> to make sure it still works correctly (especially the ebdb-vm part is >> quick&dirty, leaving a lot of warnings when VM is not installed, some >> of them may be real bugs). > I thought about extracting those two into separate packages, and > probably should have done that. That's one way to solve the problem, but it's not necessary. > Actually, I do know: vm and mu4e aren't installable via the package > manager. If I make separate packages, and put a package-requires header > in them for vm and mu4e, will package.el be satisfied if a user has > installed them via other means? Or will it bark? It will bark :-( > Another option would be a boatload of (autoload 'function "ext:vm") > statements. For ebdb-mu4e, I think the patch I send leads to correct results, so I think it's an acceptable solution. For VM, I'm not sure if the result is correct. It basically depends on whether part of the VM code are needed during compilation (most common case is if your code uses VM macros). Fixing the warnings is easy enough (rather than autoloads, you can use `declare-function`). Stefan