From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tim Cross Newsgroups: gmane.emacs.devel Subject: Re: Change `customize-save-variable' to work under "emacs -Q"? Date: Tue, 12 Jul 2011 20:30:05 +1000 Message-ID: References: <877h7ok9cd.fsf@stupidchicken.com> <87d3hgprjb.fsf@stupidchicken.com> <87r55wtget.fsf@uwakimon.sk.tsukuba.ac.jp> <87ipr8t9w9.fsf@uwakimon.sk.tsukuba.ac.jp> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1310466645 29199 80.91.229.12 (12 Jul 2011 10:30:45 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 12 Jul 2011 10:30:45 +0000 (UTC) Cc: emacs-devel@gnu.org To: "Stephen J. Turnbull" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 12 12:30:38 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QgaEf-0003qH-Jh for ged-emacs-devel@m.gmane.org; Tue, 12 Jul 2011 12:30:37 +0200 Original-Received: from localhost ([::1]:42744 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QgaEd-0002nH-8E for ged-emacs-devel@m.gmane.org; Tue, 12 Jul 2011 06:30:35 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:53824) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QgaEF-0002n2-SD for emacs-devel@gnu.org; Tue, 12 Jul 2011 06:30:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QgaEB-0006IW-9L for emacs-devel@gnu.org; Tue, 12 Jul 2011 06:30:11 -0400 Original-Received: from mail-iy0-f169.google.com ([209.85.210.169]:36419) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QgaEA-0006HB-Fm for emacs-devel@gnu.org; Tue, 12 Jul 2011 06:30:07 -0400 Original-Received: by iyl8 with SMTP id 8so5301865iyl.0 for ; Tue, 12 Jul 2011 03:30:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=9sSoW6d9keuMM1LeFT56U47cRFnugsWq75xZFM/hyWU=; b=udocWNtJz5uMeazF9e+DvNxAYblmMe+UIhw7OmjftaM1MiZy4Y1rJ8NYwSDEPAILoB 4WzKKbcm/RijdnoCBXykv18kCOaNDBTGr20oVnhKeskUCvbyLUJGsnEkOAe/d8pwgV4J 5pmpauIJS1Uk6qW4EQ2Bslo/gaG8Yz4UubbzM= Original-Received: by 10.231.61.7 with SMTP id r7mr396588ibh.151.1310466605622; Tue, 12 Jul 2011 03:30:05 -0700 (PDT) Original-Received: by 10.231.15.3 with HTTP; Tue, 12 Jul 2011 03:30:05 -0700 (PDT) In-Reply-To: <87ipr8t9w9.fsf@uwakimon.sk.tsukuba.ac.jp> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.210.169 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:141975 Archived-At: On Tue, Jul 12, 2011 at 2:12 PM, Stephen J. Turnbull w= rote: > Tim Cross writes: > > =A0> I have used that technique, but have run into problems with packages > =A0> that have already loaded where the variable needs to be set before > =A0> they are loaded. > > Granted, but that belongs to the "do what's needed to reproduce the > bug" part of my workflow. =A0I don't see how it's relevant to the > discussion of *excessive* changes to the -Q environment. > I don't think "'excessive' changes" is an accurate reflection of what has been discussed her. The issue is about a package which needs local settings which are normally handled by the 'custom' framework. However, when you are running with -Q (and possibly -q), your .emacs is not loaded and no cusotmizations are in effect. To complicate matters, some of the functions in the custom package do not work well or do not work at all if the user's .emacs is not loaded or cannot be saved to. I think Lars wants to find a way to make code, such as smtpmail (I'm gussing) work in a 'clean' way under -Q. My contribution (FWIW) was to try and emphasize that as soon as you allow local configuration settings within the -Q environment, you are fundamentally changing the familiar semantics of that environment. It is no longer the stock standard, out of the box environment which can be duplicated by anyone simply through adding the -Q switch. To get consistency between two environments, it would now be necessary to perform additional steps. [..] > > =A0> Bug reporting was not meant as the central theme - it was just an > =A0> example of one thing that could be affected when you allow local > =A0> customizations to be applied in a -Q environment. > > OK. > > =A0> What I don't want to see is one party reporting something in a -Q > =A0> environment that is not seen in another -Q environment (assuming > =A0> other things, such as platform, version etc being equal) > > I'm not sure I understand. =A0Isn't that just a symptom of a poor > report, ie, omitting necessary preparation for reproducing the > behavior from the recipe? =A0AIUI Lars' code is *not* going to suffer > from the problem you describe: only *necessary* changes to the -Q > environment will be made, and it's the reporter's responsibility, as > usual, to describe them accurately. =A0I'll let Lars speak to the > details, though. You could look at it as a symptom of poor bug reporting, but that isn't sufficient. Bugs are often reported by people with little experience and it can be difficult to know what to include and what not to. A consistent -Q environment helps by creating a consistent setup that can be communicated easily as "start with emacs -Q". We even tell people to see if the issue they have continues when you run under -Q. However, once we lose this standard environment because it may have local configuration settings, we cannot know for certain. Someone reports a problem they see under -Q, but which someone else does not see and now we don't know if its due to local customization or some other issue. However, please, move past bug reporting. The -Q is useful in many other scenarios. Think of it as the ultimate emacs reset button. With -Q everything goes back to the factor defaults. Ironically, I only really mentioned bug reporting as it was an example of how allowing local customization could make that process easier, but at the same time, potentially make other things harder - a double edged sword if you like. Once you change default settings in any way, this property of the -Q switch is lost. Yes, in many cases, it may not be an issue and yes, it may make some things, such as mail, work. However, this is irrelevant to the fact it fundamentally changes -Q in subtle ways that could have other side effects. This may well be acceptable, but if this is the case, it needs to be a decision made after considering such factors. An alternative solution is to accept that some packages, those that require local configuration, just don't work under -Q. I also think it is dangerous to just consider what Lars requires. While we may modify/add a feature to address the specific problem he is encountering, we also need to consider whether over time, others may use that facility incorrectly or in ways that were not thought of when it was implemented and what the consequences of that may be. My view is that the objective Lars is after is reasonable and we need to support his efforts. At the same time, I would like to do this in a way that does not change the semantics of -Q, or if it must, does so in a way where it is easy to get the environment consistency that -Q previously provided. There are numerous ways I think this could be done. An additional switch may be worth considering (either to force a 'only factory defaults' type setting or allow some 'customization' for specific packages - my only hesitation is contributing to emacs becoming a program that has such complex and numerous command line switches that they themselves become an issue! Tim