qlot icon indicating copy to clipboard operation
qlot copied to clipboard

Problem with github archive, use git instead

Open anticrisis opened this issue 7 years ago • 2 comments

I just installed qlot from github today and ran into a problem trying to qlot install using a github designator:

qlfile:

github sycamore ndantam/sycamore :branch master
$ ros install fukamachi/qlot
$ qlot install

Output:

Installing Quicklisp to /home/anticrisis/dev/common-lisp/test-qlot/quicklisp/ ...
; Fetching #<URL "http://beta.quicklisp.org/quicklisp.lisp">
; 55.80KB
Reading '/home/anticrisis/dev/common-lisp/test-qlot/qlfile'...
; Fetching #<URL "http://beta.quicklisp.org/dist/quicklisp.txt">
; 0.40KB
==================================================
408 bytes in 0.00 seconds (0.00KB/sec)
Already have dist "quicklisp" version "2017-08-30".
Installing dist "sycamore".
Unhandled ARCHIVE:UNHANDLED-READ-HEADER-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
                                                           {100197F7E3}>:
Unhandled ARCHIVE:UNHANDLED-READ-HEADER-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING {100197F7E3}>:
#<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}>
  [condition]

Slots with :INSTANCE allocation:
  FORMAT-CONTROL    = NIL
  FORMAT-ARGUMENTS  = NIL
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {100197F7E3}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}> #<unused argument>)
1: (SB-DEBUG::RUN-HOOK SB-EXT:*INVOKE-DEBUGGER-HOOK* #<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}>)
2: (INVOKE-DEBUGGER #<ARCHIVE:UNHANDLED-READ-HEADER-ERROR {10059EA3E3}>)
3: (ERROR ARCHIVE:UNHANDLED-READ-HEADER-ERROR :TYPEFLAG 50)
4: ((:METHOD ARCHIVE:READ-ENTRY-FROM-ARCHIVE (ARCHIVE:TAR-ARCHIVE)) #<ARCHIVE:TAR-ARCHIVE {10053566F3}>) [fast-method]
5: ((SB-PCL::EMF ARCHIVE:READ-ENTRY-FROM-ARCHIVE) #<unused argument> #<unused argument> #<ARCHIVE:TAR-ARCHIVE {10053566F3}>)
6: ((:METHOD ARCHIVE:READ-ENTRY-FROM-ARCHIVE :AROUND (T)) #<ARCHIVE:TAR-ARCHIVE {10053566F3}>) [fast-method]
7: (ARCHIVE::EXTRACT-FILES-FROM-ARCHIVE #<ARCHIVE:TAR-ARCHIVE {10053566F3}> #<CLOSURE (LAMBDA (&REST SB-IMPL::ARGUMENTS) :IN CONSTANTLY) {100598820B}>)
8: (QLOT/ARCHIVE:EXTRACT-TARBALL #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/tmp/qlot/5GEXGEG5/source-github/archive/sycamore.tar.gz" #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/tmp/qlot/5GEXGEG5/source-http/repos/")
9: ((:METHOD QLOT/SOURCE:PREPARE (QLOT.SOURCE.HTTP:SOURCE-HTTP)) #<QLOT.SOURCE.GITHUB:SOURCE-GITHUB sycamore https://github.com/ndantam/sycamore/archive/master.tar.gz>) [fast-method]
10: ((SB-PCL::EMF QLOT/SOURCE:PREPARE) #<unused argument> #<unused argument> #<QLOT.SOURCE.GITHUB:SOURCE-GITHUB sycamore https://github.com/ndantam/sycamore/archive/master.tar.gz>)
11: ((LAMBDA NIL :IN QLOT/SERVER::MAKE-APP))
12: ((LAMBDA (QLOT/SERVER::ENV) :IN QLOT/SERVER::MAKE-APP) (:PATH-INFO "qlot://localhost/sycamore.txt"))
13: (QLOT/SERVER::QLOT-FETCH "qlot://localhost/sycamore.txt" #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/tmp/install-dist-distinfo.txt" :FOLLOW-REDIRECTS #<unused argument> :QUIETLY #<unused argument> :MAXIMUM-REDIRECTS #<unused argument>)
14: (QL-DIST:INSTALL-DIST #<QL-HTTP:URL "qlot://localhost/sycamore.txt"> :PROMPT NIL :REPLACE NIL)
15: (QLOT/INSTALL::INSTALL-SOURCE #<QLOT.SOURCE.GITHUB:SOURCE-GITHUB sycamore https://github.com/ndantam/sycamore/archive/master.tar.gz>)
16: (QLOT/INSTALL::APPLY-QLFILE-TO-QLHOME #P"/home/anticrisis/dev/common-lisp/test-qlot/qlfile" #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/" :IGNORE-LOCK NIL)
17: (QLOT/INSTALL:INSTALL-QLFILE #P"/home/anticrisis/dev/common-lisp/test-qlot/qlfile" :QUICKLISP-HOME #P"/home/anticrisis/dev/common-lisp/test-qlot/quicklisp/")
18: (MAIN "install")
19: (SB-INT:SIMPLE-EVAL-IN-LEXENV (APPLY (QUOTE MAIN) ROSWELL:*ARGV*) #<NULL-LEXENV>)
20: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ROSWELL:QUIT (APPLY (QUOTE MAIN) ROSWELL:*ARGV*)) #<NULL-LEXENV>)
21: (SB-EXT:EVAL-TLF (ROSWELL:QUIT (APPLY (QUOTE MAIN) ROSWELL:*ARGV*)) NIL NIL)
22: ((LABELS SB-FASL::EVAL-FORM :IN SB-INT:LOAD-AS-SOURCE) (ROSWELL:QUIT (APPLY (QUOTE MAIN) ROSWELL:*ARGV*)) NIL)
23: (SB-INT:LOAD-AS-SOURCE #<CONCATENATED-STREAM :STREAMS NIL {1003395AC3}> :VERBOSE NIL :PRINT NIL :CONTEXT "loading")
24: ((FLET SB-FASL::LOAD-STREAM :IN LOAD) #<CONCATENATED-STREAM :STREAMS NIL {1003395AC3}> NIL)
25: (LOAD #<CONCATENATED-STREAM :STREAMS NIL {1003395AC3}> :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST T :EXTERNAL-FORMAT :DEFAULT)
26: ((FLET ROSWELL::BODY :IN ROSWELL:SCRIPT) #<SB-SYS:FD-STREAM for "file /home/anticrisis/.roswell/bin/qlot" {1003390F53}>)
27: (ROSWELL:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install")
28: (ROSWELL:RUN ((:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install") (:QUIT NIL)))
29: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ROSWELL:RUN (QUOTE ((:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install") (:QUIT NIL)))) #<NULL-LEXENV>)
30: (EVAL (ROSWELL:RUN (QUOTE ((:SCRIPT "/home/anticrisis/.roswell/bin/qlot" "install") (:QUIT NIL)))))
31: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:EVAL . "(progn #-ros.init(cl:load \"/usr/etc/roswell/init.lisp\"))") (:EVAL . "(ros:run '((:script \"/home/anticrisis/.roswell/bin/qlot\"\"install\")(:quit ())))")))
32: (SB-IMPL::TOPLEVEL-INIT)
33: ((FLET "WITHOUT-INTERRUPTS-BODY-35" :IN SB-EXT:SAVE-LISP-AND-DIE))
34: ((LABELS SB-IMPL::RESTART-LISP :IN SB-EXT:SAVE-LISP-AND-DIE))

unhandled condition in --disable-debugger mode, quitting

Workaround:

Change qlfile to this:

git sycamore https://github.com/ndantam/sycamore :branch master

You might consider getting rid of github archive support anyway, seems like that might be error prone, as long as git support implies that the git command must be available.

anticrisis avatar Sep 15 '17 00:09 anticrisis

It seems github syntax has a problem with a library which doesn't have .asd file at the root of the project root.

You might consider getting rid of github archive support anyway

I defer the decision for now. Just fixing the problem.

fukamachi avatar Oct 10 '17 09:10 fukamachi

My first guess was wrong. The project has a symlink README.md to README that causes an error in archive.

fukamachi avatar Oct 10 '17 10:10 fukamachi