[cl-debian] Bug#384457: common-lisp-controller: Reconfiguration of ASDF is too intrusive

Package: common-lisp-controller Version: 6.2 Severity: normal In order for CLC to store fasls in /var/cache, it adds a method to `asdf:output-files' with some dire effects on the user environment. Either the fasl root configuration should be organised to be active only when compiling from within `clc-require' or there should at least be some way to disable/reconfigure the redirection of fasl files. The problem is that when doing any normal ASDF compilation in an CLC6 enabled lisp (at least verified in CMUCL, package version 19c-release-20051115-2), the fasl files all end up in /var/cache as well. This means the annoyance of it being more difficult to remove all fasls in order to recompile compared to when the fasls appear in the local directory. More seriously, it means that some packages will fail to build. If one downloads the latest mcclim snapshot and tries to build the Listener application, it fails due to the inability to find some xpm files: ;; Loading #P"/var/cache/common-lisp-controller/416/cmucl/local/net/daphne/usr/local/home/tedchly/Tools/UPSTREAM/mcclim/Apps/Listener/icons.x86f". ; Compilation unit aborted. Error in batch processing: File-error in function LISP::FD-OPEN: Error opening #P"/var/cache/common-lisp-controller/416/cmucl/local/net/daphne/usr/local/home/tedchly/Tools/UPSTREAM/mcclim/Apps/Listener/icons/folder.xpm", No such file or directory. A problem that would not have hit if one could have compiled this in place rather than redirecting fasls to /var/cache. -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.5-7.151-default Locale: LANG=C, LC_CTYPE=da_DK (charmap=ISO-8859-1) Versions of packages common-lisp-controller depends on: ii bash 3.1-5 The GNU Bourne Again SHell ii cl-asdf 1.99-3 Another System Definition Facility ii debconf [debconf-2.0] 1.5.3 Debian configuration management sy ii debianutils 2.17 Miscellaneous utilities specific t ii perl 5.8.8-6.1 Larry Wall's Practical Extraction ii realpath 1.10 Return the canonicalized absolute common-lisp-controller recommends no packages.

Your message dated Mon, 25 Sep 2006 06:02:08 -0700 with message-id <E1GRq64-0002gO-Tt@spohr.debian.org> and subject line Bug#384457: fixed in common-lisp-controller 6.3 has caused the attached Bug report to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database)

Hello, I'm cc:ing the original bug submitter and re-opening the bug, the solution is even worse. On Mon, 25 Sep 2006 15:49:41 +0200, Debian Bug Tracking System wrote:
In order for CLC to store fasls in /var/cache, it adds a method to `asdf:output-files' with some dire effects on the user environment. [...] More seriously, it means that some packages will fail to build. If one downloads the latest mcclim snapshot and tries to build the Listener application, it fails due to the inability to find some xpm files:
IIRC this is the same problem with the vanilla slime [1].
Changes: common-lisp-controller (6.3) unstable; urgency=low [...] * Introduce the *redirect-fasl-files-to-cache* variable. If the value of this variable is true we redirect fasl files to the /var/cache directory. By default we will only redirect when compiling as the result of a clc-require call. (Closes: #384457)
This now cause the following problem: ===== luca@gismo:~$ sbcl This is SBCL 0.9.17, an implementation of ANSI Common Lisp. More information about SBCL is available at <http://www.sbcl.org/>. SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * (asdf:oos 'asdf:load-op 'cl-fad) ; loading system definition from /usr/share/common-lisp/systems/cl-fad.asd into ; #<PACKAGE "ASDF0"> ; registering #<SYSTEM #:CL-FAD {A97E7E1}> as CL-FAD ; registering #<SYSTEM #:CL-FAD-TESTS {AAA5861}> as CL-FAD-TESTS debugger invoked on a SB-INT:SIMPLE-FILE-ERROR in thread #<THREAD "initial thread" {A8264A1}>: error opening #P"/usr/share/common-lisp/source/cl-fad/packages.fasl": Permission denied Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [RETRY ] Retry performing #<ASDF:COMPILE-OP NIL {AAFF879}> on #<ASDF:CL-SOURCE-FILE "packages" {A994C51}>. 1: [ACCEPT] Continue, treating #<ASDF:COMPILE-OP NIL {AAFF879}> on #<ASDF:CL-SOURCE-FILE "packages" {A994C51}> as having been successful. 2: [ABORT ] Exit debugger, returning to top level. (SB-IMPL::SIMPLE-FILE-PERROR "error opening ~S" #P"/usr/share/common-lisp/source/cl-fad/packages.fasl" 13) 0] 2 ; compilation aborted after 0:00:02 ; ; compilation unit aborted ; caught 1 fatal ERROR condition * (quit) luca@gismo:~$ ===== Obviously, setting *redirect-fasl-files-to-cache* to t solves the problem, but IMHO it should at least the contrary, i.e. t by default. We cannot assume that the end user read the changelog or dig in the BTS (and AFAIK there's no other documentation for that variable). Thx, bye, Gismo / Luca Footnotes: [1] Message-Id: 87zmjqzm6i.fsf@gismo.pca.it http://common-lisp.net/pipermail/slime-devel/2006-March/004664.html http://article.gmane.org/gmane.lisp.slime.devel/4712
participants (3)
-
Christian Lynbech
-
Luca Capello
-
owner@bugs.debian.org