* VC-SVN problem @ 2004-05-08 1:31 Shawn Boyette 2004-05-07 19:58 ` Karl Fogel 0 siblings, 1 reply; 18+ messages in thread From: Shawn Boyette @ 2004-05-08 1:31 UTC (permalink / raw) Sorry if this should have gone to bug-gnu-emacs; I use CVS builds and thus figured that devel would be more appropriate. Short and sweet problem: for roughly the past 1.5 weeks, attempting to commit any file under subversion control results in failure. The messages are as follows: Wrote /home/mdxi/web/dict/kdict/edit/edit.xi [2 times] Loading log-edit... Loading easy-mmode...done Loading easymenu...done Loading log-edit...done Mark set Press C-c C-c when you are done editing. Enter a change comment. Type C-c C-c when done Checking in /home/mdxi/web/dict/kdict/edit/edit.xi... vc-svn-checkin: Symbol's function definition is void: list* The check-in is not successful, and the *VC-log* window is not removed. This isn't a killer, obviously, but it's pretty dang annoying. I hate to just complain about things, but I've just started studying my copy of the elisp intro book, so this one's pretty much over my head. -- Shawn Boyette mdxi@collapsar.net ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-08 1:31 VC-SVN problem Shawn Boyette @ 2004-05-07 19:58 ` Karl Fogel 2004-05-08 2:26 ` Shawn Boyette ` (2 more replies) 0 siblings, 3 replies; 18+ messages in thread From: Karl Fogel @ 2004-05-07 19:58 UTC (permalink / raw) Cc: Stefan Monnier, emacs-devel Shawn Boyette <mdxi@collapsar.net> writes: > Sorry if this should have gone to bug-gnu-emacs; I use CVS builds and > thus figured that devel would be more appropriate. > > Short and sweet problem: for roughly the past 1.5 weeks, attempting to > commit any file under subversion control results in failure. The > messages are as follows: > > Wrote /home/mdxi/web/dict/kdict/edit/edit.xi [2 times] > Loading log-edit... > Loading easy-mmode...done > Loading easymenu...done > Loading log-edit...done > Mark set > Press C-c C-c when you are done editing. > Enter a change comment. Type C-c C-c when done > Checking in /home/mdxi/web/dict/kdict/edit/edit.xi... > vc-svn-checkin: Symbol's function definition is void: list* > > The check-in is not successful, and the *VC-log* window is not > removed. This isn't a killer, obviously, but it's pretty dang annoying. > > I hate to just complain about things, but I've just started studying > my copy of the elisp intro book, so this one's pretty much over my > head. I believe the problem is that 'list*' is in the 'cl' package, but vc-svn.el doesn't have (require 'cl) anywhere. For some people it won't be an error, because they already have 'cl' loaded for some other reason; but in a pristine Emacs like yours, it fails. Stefan, would you rather require 'cl', or just rewrite 'vc-svn-checkin' to not use 'list*'? Shawn, in the meantime, see if putting (require 'cl) in your .emacs fixes the problem. -Karl ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-07 19:58 ` Karl Fogel @ 2004-05-08 2:26 ` Shawn Boyette 2004-05-09 0:16 ` Karl Fogel 2004-05-09 10:38 ` Richard Stallman 2004-05-10 18:22 ` Kevin Rodgers 2 siblings, 1 reply; 18+ messages in thread From: Shawn Boyette @ 2004-05-08 2:26 UTC (permalink / raw) Cc: emacs-devel On Fri, May 07, 2004 at 02:58:17PM -0500, Karl Fogel wrote: > Shawn, in the meantime, see if putting > > (require 'cl) > > in your .emacs fixes the problem. Indeed it does; many thanks. -- Shawn Boyette mdxi@collapsar.net ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-08 2:26 ` Shawn Boyette @ 2004-05-09 0:16 ` Karl Fogel 2004-05-09 7:28 ` John Paul Wallington ` (3 more replies) 0 siblings, 4 replies; 18+ messages in thread From: Karl Fogel @ 2004-05-09 0:16 UTC (permalink / raw) Shawn Boyette <mdxi@collapsar.net> wrote regarding vc-svn.el: > > Shawn, in the meantime, see if putting > > > > (require 'cl) > > > > in your .emacs fixes the problem. > > Indeed it does; many thanks. So, I'd like to fix this in vc-svn.el, in the simplest way: by adding (require 'cl) so that 'list*' is available. But that brings me to a larger question, which is, what *are* the criteria for committing to files in Emacs? I've been trying to grok the answer by watching this list, but that's not working as well as I'd hoped. I'm not talking about controversial new features here. Clearly, those need to be discussed on the list, and a consensus should emerge, before they are checked in. I'm just talking about bugfixes (like this one to vc-svn.el) and minor enhancements. In some other projects, a committer can commit anywhere, according to their judgement. If a change is wrong, or non-optimal, this can be brought up on the list later and the problem can be resolved with a new change, or an explanation of why the old change really is okay, or whatever. In other projects, voting is required; in still other projects, approvial by an area maintainer is required. These policies are usually spelled out in some file called HACKING or DEVEL or MAINTENANCE, in the top level of the project. There are no such written guidelines for Emacs, as far as I can tell (?). The only thing I've been able to glean from lurking is that a) RMS seems to have the final say b) certain area maintainers commit without discussion I haven't rethreaded this message, because it might be that the answer is simple and doesn't need to happen in a new thread. (Maybe there's a written guideline, and I just missed it somehow?) Anyway, to return to my original question: is it okay to commit this change to vc-svn.el? Thanks, -Karl P.S. Is emacs-commit unused now? It appears to be all spam since the beginning of this year, according to the archives, though there were real commit mails before then. The exact same situation seems to hold for emacs-diffs, which makes me wonder if they're not two names for the same list... http://mail.gnu.org/archive/html/emacs-commit/ http://mail.gnu.org/archive/html/emacs-diffs/ ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 0:16 ` Karl Fogel @ 2004-05-09 7:28 ` John Paul Wallington 2004-05-10 21:33 ` Jim Blandy 2004-05-09 8:10 ` Miles Bader ` (2 subsequent siblings) 3 siblings, 1 reply; 18+ messages in thread From: John Paul Wallington @ 2004-05-09 7:28 UTC (permalink / raw) Cc: emacs-devel > So, I'd like to fix this in vc-svn.el, in the simplest way: by adding > (require 'cl) so that 'list*' is available. Just checking: do you mean (eval-when-compile (require 'cl)) ? (The cl package defines a compiler macro for `list*', and the elisp manual's coding conventions say not to load cl at runtime.) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 7:28 ` John Paul Wallington @ 2004-05-10 21:33 ` Jim Blandy 2004-05-11 7:50 ` John Paul Wallington 2004-05-11 12:23 ` Richard Stallman 0 siblings, 2 replies; 18+ messages in thread From: Jim Blandy @ 2004-05-10 21:33 UTC (permalink / raw) Cc: kfogel, emacs-devel John Paul Wallington <jpw@gnu.org> writes: > > So, I'd like to fix this in vc-svn.el, in the simplest way: by adding > > (require 'cl) so that 'list*' is available. > > Just checking: do you mean (eval-when-compile (require 'cl)) ? > > (The cl package defines a compiler macro for `list*', and the elisp > manual's coding conventions say not to load cl at runtime.) I've gotta be missing something obvious: What do you do if your package actually uses functions from CL, not just macros? Then CL must be loaded at runtime. Are such packages simply unsuitable for inclusion in the Emacs distribution? ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-10 21:33 ` Jim Blandy @ 2004-05-11 7:50 ` John Paul Wallington 2004-05-11 12:23 ` Richard Stallman 1 sibling, 0 replies; 18+ messages in thread From: John Paul Wallington @ 2004-05-11 7:50 UTC (permalink / raw) Cc: kfogel, emacs-devel > > Just checking: do you mean (eval-when-compile (require 'cl)) ? > > > > (The cl package defines a compiler macro for `list*', and the elisp > > manual's coding conventions say not to load cl at runtime.) > > I've gotta be missing something obvious: I don't think so. > What do you do if your package actually uses functions from CL, not > just macros? Then CL must be loaded at runtime. Well, some functions in the cl library have corresponding compiler macros and you can use those without loading cl at runtime in addition to its normal macros. Also, by default the byte compiler issues "function from cl package called at runtime" warnings now so inadvertent use at runtime is easy to detect. I guess whether to rewrite an existing package to avoid runtime use of cl or to follow those conventions when developing a new package is up to the maintainers of that package. > Are such packages simply unsuitable for inclusion in the Emacs > distribution? Yes, I believe so. Earlier in this thread RMS said that it's not acceptable for any package in Emacs to require cl at runtime: http://mail.gnu.org/archive/html/emacs-devel/2004-05/msg00506.html ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-10 21:33 ` Jim Blandy 2004-05-11 7:50 ` John Paul Wallington @ 2004-05-11 12:23 ` Richard Stallman 1 sibling, 0 replies; 18+ messages in thread From: Richard Stallman @ 2004-05-11 12:23 UTC (permalink / raw) Cc: kfogel, jpw, emacs-devel What do you do if your package actually uses functions from CL, not just macros? Then CL must be loaded at runtime. Are such packages simply unsuitable for inclusion in the Emacs distribution? They are unsuitable unless they are changed not to use those functions. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 0:16 ` Karl Fogel 2004-05-09 7:28 ` John Paul Wallington @ 2004-05-09 8:10 ` Miles Bader 2004-05-09 13:16 ` Thien-Thi Nguyen 2004-05-09 18:47 ` Richard Stallman 3 siblings, 0 replies; 18+ messages in thread From: Miles Bader @ 2004-05-09 8:10 UTC (permalink / raw) Cc: emacs-devel On Sat, May 08, 2004 at 07:16:30PM -0500, Karl Fogel wrote: > But that brings me to a larger question, which is, what *are* the > criteria for committing to files in Emacs? I've been trying to grok > the answer by watching this list, but that's not working as well as > I'd hoped. I think it's generally `If you're not sure, ask.' Luckily there seem to be no bozos with commit access, so this seems to work pretty well. Everybody starts out feeling nervous about what's OK to commit, and so ask about everything, and then gradually become more confident and start committing without asking -- and by that time their judgement has become good enough that they don't screw things up. [Sort of like `If you have to ask the price, you can't afford it.' :-] -Miles -- Saa, shall we dance? (from a dance-class advertisement) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 0:16 ` Karl Fogel 2004-05-09 7:28 ` John Paul Wallington 2004-05-09 8:10 ` Miles Bader @ 2004-05-09 13:16 ` Thien-Thi Nguyen 2004-05-09 18:47 ` Richard Stallman 3 siblings, 0 replies; 18+ messages in thread From: Thien-Thi Nguyen @ 2004-05-09 13:16 UTC (permalink / raw) Cc: emacs-devel Karl Fogel <kfogel@floss.red-bean.com> writes: I haven't rethreaded this message, because it might be that the answer is simple and doesn't need to happen in a new thread. "the answer is simple: there is no simple answer!" (basically, if you were to write a HACKING file, it would eventually boil down to this, after first starting as a general policy, then over time being revised to add exception upon ever higher-ordered exception. :-) thi ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 0:16 ` Karl Fogel ` (2 preceding siblings ...) 2004-05-09 13:16 ` Thien-Thi Nguyen @ 2004-05-09 18:47 ` Richard Stallman 2004-05-09 18:25 ` Karl Fogel 2004-05-09 19:01 ` David Kastrup 3 siblings, 2 replies; 18+ messages in thread From: Richard Stallman @ 2004-05-09 18:47 UTC (permalink / raw) Cc: emacs-devel So, I'd like to fix this in vc-svn.el, in the simplest way: by adding (require 'cl) so that 'list*' is available. Please don't do that. It's not acceptable for any package in Emacs to do that. The CL functions are not standard parts of the Emacs Lisp language, and the user may have defined the same names in some other way. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 18:47 ` Richard Stallman @ 2004-05-09 18:25 ` Karl Fogel 2004-05-09 19:01 ` David Kastrup 1 sibling, 0 replies; 18+ messages in thread From: Karl Fogel @ 2004-05-09 18:25 UTC (permalink / raw) Richard Stallman <rms@gnu.org> writes: > So, I'd like to fix this in vc-svn.el, in the simplest way: by adding > (require 'cl) so that 'list*' is available. > > Please don't do that. It's not acceptable for any package in Emacs to > do that. The CL functions are not standard parts of the Emacs Lisp > language, and the user may have defined the same names in some other > way. Thanks, I'll remember that. John Paul Wallington's suggestion was to use use (eval-when-compile (require 'cl)) instead. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 18:47 ` Richard Stallman 2004-05-09 18:25 ` Karl Fogel @ 2004-05-09 19:01 ` David Kastrup 2004-05-09 19:11 ` David Kastrup 1 sibling, 1 reply; 18+ messages in thread From: David Kastrup @ 2004-05-09 19:01 UTC (permalink / raw) Cc: kfogel, emacs-devel Richard Stallman <rms@gnu.org> writes: > So, I'd like to fix this in vc-svn.el, in the simplest way: by adding > (require 'cl) so that 'list*' is available. > > Please don't do that. It's not acceptable for any package in Emacs to > do that. The CL functions are not standard parts of the Emacs Lisp > language, and the user may have defined the same names in some other > way. Usually (eval-when-compile '(require 'cl)) should be sufficient, and it is what is recommended for that functionality in the Elisp manual. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-09 19:01 ` David Kastrup @ 2004-05-09 19:11 ` David Kastrup 0 siblings, 0 replies; 18+ messages in thread From: David Kastrup @ 2004-05-09 19:11 UTC (permalink / raw) Cc: kfogel, emacs-devel David Kastrup <dak@gnu.org> writes: > Richard Stallman <rms@gnu.org> writes: > > > So, I'd like to fix this in vc-svn.el, in the simplest way: by adding > > (require 'cl) so that 'list*' is available. > > > > Please don't do that. It's not acceptable for any package in Emacs to > > do that. The CL functions are not standard parts of the Emacs Lisp > > language, and the user may have defined the same names in some other > > way. > > Usually > (eval-when-compile '(require 'cl)) > > should be sufficient, and it is what is recommended for that > functionality in the Elisp manual. Ok, I goofed. Spurious quoting. Here is the original passage from the manual: * Please don't require the `cl' package of Common Lisp extensions at run time. Use of this package is optional, and it is not part of the standard Emacs namespace. If your package loads `cl' at run time, that could cause name clashes for users who don't use that package. However, there is no problem with using the `cl' package at compile time, for the sake of macros. You do that like this: (eval-when-compile (require 'cl)) -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-07 19:58 ` Karl Fogel 2004-05-08 2:26 ` Shawn Boyette @ 2004-05-09 10:38 ` Richard Stallman 2004-05-10 18:22 ` Kevin Rodgers 2 siblings, 0 replies; 18+ messages in thread From: Richard Stallman @ 2004-05-09 10:38 UTC (permalink / raw) Cc: mdxi, monnier, emacs-devel Stefan, would you rather require 'cl', or just rewrite 'vc-svn-checkin' to not use 'list*'? Packages in Emacs are not supposed to require cl at run time. Users can have their own definitions for the function names that CL defines, and they won't want CL to be loaded. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-07 19:58 ` Karl Fogel 2004-05-08 2:26 ` Shawn Boyette 2004-05-09 10:38 ` Richard Stallman @ 2004-05-10 18:22 ` Kevin Rodgers 2004-05-10 19:16 ` Stefan Monnier 2 siblings, 1 reply; 18+ messages in thread From: Kevin Rodgers @ 2004-05-10 18:22 UTC (permalink / raw) Karl Fogel wrote: > Stefan, would you rather require 'cl', or just rewrite > 'vc-svn-checkin' to not use 'list*'? Wouldn't the second option be better? | list* is a compiled Lisp function in `cl'. | (list* ARG &rest REST) | | Return a new list with specified args as elements, cons'd to last arg. | Thus, `(list* A B C D)' is equivalent to `(nconc (list A B C) D)', or to | `(cons A (cons B (cons C D)))'. -- Kevin Rodgers ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-10 18:22 ` Kevin Rodgers @ 2004-05-10 19:16 ` Stefan Monnier 2004-05-10 21:56 ` Miles Bader 0 siblings, 1 reply; 18+ messages in thread From: Stefan Monnier @ 2004-05-10 19:16 UTC (permalink / raw) Cc: emacs-devel >> Stefan, would you rather require 'cl', or just rewrite >> 'vc-svn-checkin' to not use 'list*'? > Wouldn't the second option be better? Why? The byte-compiler will turn it into the equivalent calls to `cons'. `list*' is a pretty simple a common list operation. Actually it's predefined in Emacs Lisp, once under the name backquote-list*-function and once under the name backquote-list*-macro. Stefan ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: VC-SVN problem 2004-05-10 19:16 ` Stefan Monnier @ 2004-05-10 21:56 ` Miles Bader 0 siblings, 0 replies; 18+ messages in thread From: Miles Bader @ 2004-05-10 21:56 UTC (permalink / raw) Cc: Kevin Rodgers, emacs-devel On Mon, May 10, 2004 at 03:16:04PM -0400, Stefan Monnier wrote: > `list*' is a pretty simple a common list operation. Actually it's > predefined in Emacs Lisp, once under the name backquote-list*-function > and once under the name backquote-list*-macro. Actually this is one of those functions I've wished for a long time was in the emacs core. Any reason why not? It's a very simple function, has no `issues' that I can see, and quite useful... Since as you say it's _already_ being defined under a different name in backquote, it might even same some space. -Miles -- Ich bin ein Virus. Mach' mit und kopiere mich in Deine .signature. ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2004-05-11 12:23 UTC | newest] Thread overview: 18+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2004-05-08 1:31 VC-SVN problem Shawn Boyette 2004-05-07 19:58 ` Karl Fogel 2004-05-08 2:26 ` Shawn Boyette 2004-05-09 0:16 ` Karl Fogel 2004-05-09 7:28 ` John Paul Wallington 2004-05-10 21:33 ` Jim Blandy 2004-05-11 7:50 ` John Paul Wallington 2004-05-11 12:23 ` Richard Stallman 2004-05-09 8:10 ` Miles Bader 2004-05-09 13:16 ` Thien-Thi Nguyen 2004-05-09 18:47 ` Richard Stallman 2004-05-09 18:25 ` Karl Fogel 2004-05-09 19:01 ` David Kastrup 2004-05-09 19:11 ` David Kastrup 2004-05-09 10:38 ` Richard Stallman 2004-05-10 18:22 ` Kevin Rodgers 2004-05-10 19:16 ` Stefan Monnier 2004-05-10 21:56 ` Miles Bader
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).