From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Luc Teirlinck Newsgroups: gmane.emacs.devel Subject: Re: custom-save-variables: Unknown requested feature: nil Date: Wed, 30 Nov 2005 19:55:46 -0600 (CST) Message-ID: <200512010155.jB11tkm26390@raven.dms.auburn.edu> References: <091D7EC2-1681-4CA8-925B-4533F30F5A77@davids-welt.de> NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1133402322 9627 80.91.229.2 (1 Dec 2005 01:58:42 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 1 Dec 2005 01:58:42 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Dec 01 02:58:35 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EhdhC-0007Rl-SG for ged-emacs-devel@m.gmane.org; Thu, 01 Dec 2005 02:57:15 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EhdhC-00080t-7T for ged-emacs-devel@m.gmane.org; Wed, 30 Nov 2005 20:57:14 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ehdgx-0007zx-LK for emacs-devel@gnu.org; Wed, 30 Nov 2005 20:56:59 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ehdgw-0007zA-36 for emacs-devel@gnu.org; Wed, 30 Nov 2005 20:56:58 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ehdgv-0007z3-Qr for emacs-devel@gnu.org; Wed, 30 Nov 2005 20:56:57 -0500 Original-Received: from [131.204.53.104] (helo=manatee.dms.auburn.edu) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Ehdgw-0008Fv-0T for emacs-devel@gnu.org; Wed, 30 Nov 2005 20:56:58 -0500 Original-Received: from raven.dms.auburn.edu (raven.dms.auburn.edu [131.204.53.29]) by manatee.dms.auburn.edu (8.13.3+Sun/8.13.3) with ESMTP id jB11upj3024242; Wed, 30 Nov 2005 19:56:51 -0600 (CST) Original-Received: (from teirllm@localhost) by raven.dms.auburn.edu (8.11.7p1+Sun/8.11.7) id jB11tkm26390; Wed, 30 Nov 2005 19:55:46 -0600 (CST) X-Authentication-Warning: raven.dms.auburn.edu: teirllm set sender to teirllm@dms.auburn.edu using -f Original-To: dr@davids-welt.de In-reply-to: <091D7EC2-1681-4CA8-925B-4533F30F5A77@davids-welt.de> (message from David Reitter on Wed, 30 Nov 2005 20:09:27 +0000) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.1 (manatee.dms.auburn.edu [131.204.53.104]); Wed, 30 Nov 2005 19:56:51 -0600 (CST) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:46839 Archived-At: David Reitter wrote: I don't know what caused it. The below change makes the message go away, but it's quite possibly not the right fix. I believe that it is the right fix, but the same fix needs to be applied to three other options, as I pointed out in my earlier reply. That `:require nil' came from the following change by Stefan Monnier on 2002-09-13: * simple.el: Provide `simple'. (transient-mark-mode, line-number-mode, column-number-mode): Pass an explicit `:require nil' argument. I do not know the reason for that change. Whatever the reason for that change, it seems wrong. I believe that it tried to undo an at the time automatic :require written by define-minor-mode. It did not do that. Instead it tried to require the library nil.el _in addition_ to the other require, instead of overwriting it. (A defcustom can have more than one :require. These do not override each other. Instead, all libraries are required by the defcustom.) This did not lead to an error, because of code in custom-save-variables: (when (and (symbolp request) (not (featurep request))) (message "Unknown requested feature: %s" request) (setq requests (delq request requests)))) which eliminated the `:require nil'. If you disable the above piece of code and customize transient-mark-mode and save it, then the next time you try to load your init file, it will yield an error because it can not open the library nil. Not only did the 2002 change not do what it tried to do, it is also no longer necessary to try to do it, since the following more recent change: 2005-06-26 Stefan Monnier * emacs-lisp/easy-mmode.el (define-minor-mode): Don't automatically add a :require to the defcustom. I believe that the `:require nil' should be deleted in the defcustoms for transient-mark-mode, line-number-mode, column-number-mode and size-indication-mode. Sincerely, Luc.