From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/62211 Path: news.gmane.org!not-for-mail From: Bill Wohler Newsgroups: gmane.emacs.gnus.general,gmane.emacs.devel Subject: Re: defcustom :version Date: Sat, 11 Mar 2006 12:40:54 -0800 Organization: Newt Software Message-ID: <9584.1142109654@olgas.newt.com> References: <15499.1142047137@olgas.newt.com> <200603110447.k2B4lbt10750@raven.dms.auburn.edu> NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1142110303 11168 80.91.229.2 (11 Mar 2006 20:51:43 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 11 Mar 2006 20:51:43 +0000 (UTC) Cc: emacs-devel@gnu.org, ding@gnus.org Original-X-From: ding-owner+m10736@lists.math.uh.edu Sat Mar 11 21:51:41 2006 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from malifon.math.uh.edu ([129.7.128.13]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FIB3l-0005o2-CT for ding-account@gmane.org; Sat, 11 Mar 2006 21:51:33 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu ident=lists) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 1FIB3Z-0002SP-00; Sat, 11 Mar 2006 14:51:21 -0600 Original-Received: from nas01.math.uh.edu ([129.7.128.39]) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 1FIAte-0002SH-00 for ding@lists.math.uh.edu; Sat, 11 Mar 2006 14:41:06 -0600 Original-Received: from quimby.gnus.org ([80.91.224.244]) by nas01.math.uh.edu with esmtp (Exim 4.52) id 1FIAta-00069j-Se for ding@lists.math.uh.edu; Sat, 11 Mar 2006 14:41:06 -0600 Original-Received: from pop-sarus.atl.sa.earthlink.net ([207.69.195.72]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1FIAtZ-0000N0-00 for ; Sat, 11 Mar 2006 21:41:02 +0100 Original-Received: from h-68-165-5-58.snvacaid.dynamic.covad.net ([68.165.5.58] helo=olgas.newt.com) by pop-sarus.atl.sa.earthlink.net with esmtp (Exim 3.36 #10) id 1FIAtT-0003ox-00; Sat, 11 Mar 2006 15:40:55 -0500 Original-Received: by olgas.newt.com (Postfix, from userid 1000) id B6B151707E; Sat, 11 Mar 2006 12:40:54 -0800 (PST) Original-Received: from olgas.newt.com (localhost [127.0.0.1]) by olgas.newt.com (Postfix) with ESMTP id B318116F9B; Sat, 11 Mar 2006 12:40:54 -0800 (PST) Original-To: Luc Teirlinck In-reply-to: <200603110447.k2B4lbt10750@raven.dms.auburn.edu> Comments: In-reply-to Luc Teirlinck message dated "Fri, 10 Mar 2006 22:47:37 -0600." X-Mailer: MH-E 7.93+cvs; nmh 1.1; GNU Emacs 22.0.50.14 X-Image-URL: http://www.newt.com/wohler/images/bill-diving.png Mail-Followup-To: emacs-devel@gnu.org, ding@gnus.org X-Spam-Score: -2.5 (--) Precedence: bulk Original-Sender: ding-owner@lists.math.uh.edu Xref: news.gmane.org gmane.emacs.gnus.general:62211 gmane.emacs.devel:51484 Archived-At: Luc Teirlinck wrote: > `M-x customize-changed RET 21.4 RET' is supposed to show the user all > defcustoms that were added, or whose standard value changed, in Emacs > 22.1. That is the main purpose of the :version keyword. Of course, > the fact that you get a 2811 line long Custom buffer limits the > usefulness of this feature. Once upon a time, when Emacs releases > used to be much more frequent than they are now, `M-x customize-changed' > was one of the most useful things to do when a new Emacs version came out. Thanks for telling me about customize-changed, Luc. I wasn't aware of its presence, and yes, I would find it extremely useful with a new version (of whatever). I currently use some Perl to generate a list for MH-E's release notes, but the algorithm probably isn't perfect (grep for defcustom before and after, grab the second word, and diff). Taking a quick look at the customize-changed code, it occurred to me that the following would make sense and be fairly easy to implement (although I am not suggesting we do it before the release): 1. Create a :package-version customize keyword. 2. Bind it to a custom-package-version symbol. 3. Refactor customize-changed to accept two new optional arguments which is the prefix of the package and the version symbol to use ('custom-version by default). 4. Add a customize-package-changed function which would call (customize-changed since-version prefix 'custom-package-version) Note that #3 would address your concerns about the copious output from the current implementation. You could say (customize-changed nil "custom") to limit the output to changes in customize. If this seems like a good idea, I would suggest we do make :package-version a valid keyword (by safely adding a single line to the cond in custom-handle-keyword) so that I can add it to MH-E before the release so that it is there for future use. -- Bill Wohler http://www.newt.com/wohler/ GnuPG ID:610BD9AD Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian! If you're passed on the right, you're in the wrong lane.