bytecurry / colliflower

Generic interfaces for lisp collections.
MIT License
11 stars 0 forks source link

Problem building colliflower #1

Open samebchase opened 9 years ago

samebchase commented 9 years ago

Hi, I just tried loading colliflower on my machine soon after fetching the latest libraries using Quicklisp. This is the error I got:

Any ideas on how this could be fixed?

Thanks! :-)

Lock on package SERAPEUM violated when interning DEFINE-DO-MACRO
while in package COMMON-LISP-USER.
   [Condition of type PACKAGE-LOCKED-ERROR]
See also:
  SBCL Manual, Package Locks [:node]

Restarts:
 0: [CONTINUE] Ignore the package lock.
 1: [IGNORE-ALL] Ignore all package locks in the context of this operation.
 2: [UNLOCK-PACKAGE] Unlock the package.
 3: [RETRY] Retry compiling #<CL-SOURCE-FILE "liter/base" "lisp">.
 4: [ACCEPT] Continue, treating compiling #<CL-SOURCE-FILE "liter/base" "lisp"> as having been successful.
 5: [RETRY] Retry ASDF operation.
 6: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration.
 7: [ABORT] Give up on "colliflower"
 8: [RETRY] Retry SLIME REPL evaluation request.
 9: [*ABORT] Return to SLIME's top level.
 10: [ABORT] abort thread (#<THREAD "repl-thread" RUNNING {1009A18033}>)

Backtrace:
  0: (PACKAGE-LOCK-VIOLATION #<PACKAGE "SERAPEUM"> :SYMBOL NIL :FORMAT-CONTROL "interning ~A" :FORMAT-ARGUMENTS ("DEFINE-DO-MACRO"))
  1: (SB-IMPL::ASSERT-PACKAGE-UNLOCKED #<PACKAGE "SERAPEUM"> "interning ~A" "DEFINE-DO-MACRO")
  2: ((FLET SB-IMPL::THUNK :IN SB-INT:INTERN*))
  3: ((FLET #:WITHOUT-INTERRUPTS-BODY-637 :IN SB-THREAD::CALL-WITH-RECURSIVE-LOCK))
  4: (SB-THREAD::CALL-WITH-RECURSIVE-LOCK #<CLOSURE (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN SB-IMPL::CALL-WITH-PACKAGE-GRAPH) {7FFFF0A9BB9B}> #<SB-THREAD:MUTEX "Package Graph Lock" owner: #<SB-THREA..
  5: (SB-IMPL::CALL-WITH-PACKAGE-GRAPH #<CLOSURE (FLET SB-IMPL::THUNK :IN SB-INT:INTERN*) {7FFFF0A9BBEB}>)
  6: (SB-INT:INTERN* "DEFINE-DO-MACRO" 15 #<PACKAGE "SERAPEUM"> :NO-COPY NIL)
  7: (INTERN "DEFINE-DO-MACRO" #<PACKAGE "SERAPEUM">)
  8: (UIOP/PACKAGE::ENSURE-IMPORT #<unavailable argument> #<unavailable argument> #<unavailable argument> #<unavailable argument> #<unavailable argument>)
  9: (UIOP/PACKAGE:ENSURE-PACKAGE :LITER/BASE :NICKNAMES NIL :DOCUMENTATION NIL :USE (:CL :ITERATE) :SHADOW NIL :SHADOWING-IMPORT-FROM NIL :IMPORT-FROM ((:SERAPEUM #:DEFINE-DO-MACRO #:FINC)) :EXPORT (#:GET..
 10: (SB-INT:SIMPLE-EVAL-IN-LEXENV (APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE (:LITER/BASE :NICKNAMES NIL :DOCUMENTATION NIL :USE ...))) #<NULL-LEXENV>)
 11: (SB-INT:SIMPLE-EVAL-IN-LEXENV (PROGN (APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE #))) #<NULL-LEXENV>)
 12: (EVAL-TLF (PROGN (APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE #))) 0 #<NULL-LEXENV>)
 13: ((FLET SB-C::FROB :IN SB-C::EVAL-COMPILE-TOPLEVEL))
 14: ((FLET SB-C::DEFAULT-PROCESSOR :IN SB-C::PROCESS-TOPLEVEL-FORM) (APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE (:LITER/BASE :NICKNAMES NIL :DOCUMENTATION NIL :USE ...))))
 15: (SB-C::PROCESS-TOPLEVEL-FORM (APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE (:LITER/BASE :NICKNAMES NIL :DOCUMENTATION NIL :USE ...))) (#1=(EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (AP..
 16: (SB-C::PROCESS-TOPLEVEL-PROGN ((APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE #))) (#1=(EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (APPLY # #)) (PROGN #1#) SB-C::ORIGINAL-SOURCE-START 0 ..
 17: (SB-C::PROCESS-TOPLEVEL-FORM (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (APPLY (QUOTE UIOP/PACKAGE:ENSURE-PACKAGE) (QUOTE #))) ((PROGN (EVAL-WHEN # #)) SB-C::ORIGINAL-SOURCE-START 0 0) NIL..
 18: (SB-C::PROCESS-TOPLEVEL-PROGN ((EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (APPLY # #))) ((PROGN (EVAL-WHEN # #)) SB-C::ORIGINAL-SOURCE-START 0 0) NIL)
 19: (SB-C::PROCESS-TOPLEVEL-FORM (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (APPLY # #))) (SB-C::ORIGINAL-SOURCE-START 0 0) NIL)
 20: ((FLET SB-C::DEFAULT-PROCESSOR :IN SB-C::PROCESS-TOPLEVEL-FORM) (UIOP/PACKAGE:DEFINE-PACKAGE :LITER/BASE (:USE :CL :ITERATE) (:IMPORT-FROM :SERAPEUM #:DEFINE-DO-MACRO #:FINC) (:EXPORT #:GET-ITERATOR #..
 21: (SB-C::PROCESS-TOPLEVEL-FORM (UIOP/PACKAGE:DEFINE-PACKAGE :LITER/BASE (:USE :CL :ITERATE) (:IMPORT-FROM :SERAPEUM #:DEFINE-DO-MACRO #:FINC) (:EXPORT #:GET-ITERATOR #:MAKE-HASH-KEY-ITERATOR #:MAKE-HASH..
 22: ((LAMBDA (SB-KERNEL:FORM &KEY SB-C::CURRENT-INDEX &ALLOW-OTHER-KEYS) :IN SB-C::SUB-SUB-COMPILE-FILE) (UIOP/PACKAGE:DEFINE-PACKAGE :LITER/BASE (:USE :CL :ITERATE) (:IMPORT-FROM :SERAPEUM #:DEFINE-DO-MA..
 23: (SB-C::%DO-FORMS-FROM-INFO #<FUNCTION (LAMBDA (SB-KERNEL:FORM &KEY SB-C::CURRENT-INDEX &ALLOW-OTHER-KEYS) :IN SB-C::SUB-SUB-COMPILE-FILE) {100200A16B}> #<SB-C::SOURCE-INFO {1009F4D4F3}> SB-C::INPUT-ER..
 24: (SB-C::SUB-SUB-COMPILE-FILE #<SB-C::SOURCE-INFO {1009F4D4F3}>)
 25: ((FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN SB-C::SUB-COMPILE-FILE))
 26: ((FLET #:WITHOUT-INTERRUPTS-BODY-637 :IN SB-THREAD::CALL-WITH-RECURSIVE-LOCK))
 27: (SB-THREAD::CALL-WITH-RECURSIVE-LOCK #<CLOSURE (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN SB-C::SUB-COMPILE-FILE) {7FFFF0A9C8CB}> #<SB-THREAD:MUTEX "World Lock" owner: #<SB-THREAD:THREAD "repl-thr..
 28: ((LAMBDA NIL :IN SB-C::SUB-COMPILE-FILE))
 29: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
 30: (SB-C::SUB-COMPILE-FILE #<SB-C::SOURCE-INFO {1009F4D4F3}>)
 31: (COMPILE-FILE #P"/home/samuel/.quicklisp/dists/quicklisp/software/colliflower-20150923-git/liter/base.lisp" :OUTPUT-FILE #P"/home/samuel/.cache/common-lisp/sbcl-1.2.12-linux-x64/home/samuel/.quicklisp..
 32: (UIOP/UTILITY:CALL-WITH-MUFFLED-CONDITIONS #<CLOSURE (LAMBDA NIL :IN UIOP/LISP-BUILD:COMPILE-FILE*) {1009F4A1EB}> NIL)
 33: (UIOP/PATHNAME:CALL-WITH-ENOUGH-PATHNAME #P"/home/samuel/.quicklisp/dists/quicklisp/software/colliflower-20150923-git/liter/base.lisp" NIL #<CLOSURE (LAMBDA (UIOP/LISP-BUILD::INPUT-FILE) :IN UIOP/LISP..
 34: (UIOP/LISP-BUILD:COMPILE-FILE* #P"/home/samuel/.quicklisp/dists/quicklisp/software/colliflower-20150923-git/liter/base.lisp" :OUTPUT-FILE #P"/home/samuel/.cache/common-lisp/sbcl-1.2.12-linux-x64/home/..
 35: (ASDF/LISP-ACTION:PERFORM-LISP-COMPILATION #<ASDF/LISP-ACTION:COMPILE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "liter/base" "lisp">)
 36: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unavailable argument> #<unavailable argument> #<ASDF/LISP-ACTION:COMPILE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "liter/base" "lisp">)
 37: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)) #<ASDF/LISP-ACTION:COMPILE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "liter/base" "lisp">) [fast-method]
 38: ((:METHOD ASDF/PLAN:PERFORM-PLAN (LIST)) ((#1=#<ASDF/LISP-ACTION:PREPARE-OP > . #2=#<ASDF/SYSTEM:SYSTEM #3="iterate">) (#1# . #4=#<ASDF/LISP-ACTION:CL-SOURCE-FILE #3# "package">) (#5=#<ASDF/LISP-ACTIO..
 39: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
 40: ((:METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)) ((#1=#<ASDF/LISP-ACTION:PREPARE-OP > . #2=#<ASDF/SYSTEM:SYSTEM #3="iterate">) (#1# . #4=#<ASDF/LISP-ACTION:CL-SOURCE-FILE #3# "package">) (#5=#<ASDF/LISP-..
 41: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
 42: ((:METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {1009FB2843}> :VERBOSE NIL) [fast-method]
 43: ((:METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)) #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL> #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "colliflower"> :VERB..
 44: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL> #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "colliflower"> :VERBOSE NIL)
 45: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
 46: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) #<ASDF/LISP-ACTION:LOAD-OP :VERBOSE NIL> #<ASDF/PACKAGE-INFERRED-SYSTEM:PACKAGE-INFERRED-SYSTEM "colliflower"> :VERBOSE NIL) [fast-method]
 47: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> ASDF/LISP-ACTION:LOAD-OP "colliflower" :VERBOSE NIL)
 48: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
 49: (ASDF/CACHE:CALL-WITH-ASDF-CACHE #<CLOSURE (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {1009F8867B}> :OVERRIDE NIL :KEY NIL)
 50: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "colliflower" :VERBOSE NIL) [fast-method]
 51: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "colliflower" :VERBOSE NIL) [fast-method]
 52: (QUICKLISP-CLIENT::CALL-WITH-MACROEXPAND-PROGRESS #<CLOSURE (LAMBDA NIL :IN QUICKLISP-CLIENT::APPLY-LOAD-STRATEGY) {1009F677AB}>)
 53: (QUICKLISP-CLIENT::AUTOLOAD-SYSTEM-AND-DEPENDENCIES "colliflower" :PROMPT NIL)
 54: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION (T T)) #<unavailable argument> #<CLOSURE (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1009BAF4BB}>) [fast-method]
 55: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION :AROUND (QL-IMPL:SBCL T)) #<QL-IMPL:SBCL {10045337C3}> #<CLOSURE (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1009BAF4BB}>) [fast-me..
 56: ((:METHOD QUICKLISP-CLIENT:QUICKLOAD (T)) #<unavailable argument> :PROMPT NIL :VERBOSE NIL) [fast-method]
 57: (QL-DIST::CALL-WITH-CONSISTENT-DISTS #<CLOSURE (LAMBDA NIL :IN QUICKLISP-CLIENT:QUICKLOAD) {1009B9B73B}>)
 58: (SB-INT:SIMPLE-EVAL-IN-LEXENV (QUICKLISP-CLIENT:QUICKLOAD (QUOTE COLLIFLOWER)) #<NULL-LEXENV>)
 59: (EVAL (QUICKLISP-CLIENT:QUICKLOAD (QUOTE COLLIFLOWER)))
 60: (SWANK::EVAL-REGION "(ql:quickload 'colliflower) ..)
 61: ((LAMBDA NIL :IN SWANK-REPL::REPL-EVAL))
 62: (SWANK-REPL::TRACK-PACKAGE #<CLOSURE (LAMBDA NIL :IN SWANK-REPL::REPL-EVAL) {1009A32F1B}>)
 63: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<CLOSURE (LAMBDA NIL :IN SWANK-REPL::REPL-EVAL) {1009A32E7B}>)
 64: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CLOSURE (LAMBDA NIL :IN SWANK-REPL::REPL-EVAL) {1009A32E5B}>)
 65: (SWANK-REPL::REPL-EVAL "(ql:quickload 'colliflower) ..)
 66: (SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK-REPL:LISTENER-EVAL "(ql:quickload 'colliflower) ..)
 67: (EVAL (SWANK-REPL:LISTENER-EVAL "(ql:quickload 'colliflower) ..)
 68: (SWANK:EVAL-FOR-EMACS (SWANK-REPL:LISTENER-EVAL "(ql:quickload 'colliflower) ..)
 69: (SWANK::PROCESS-REQUESTS NIL)
 70: ((LAMBDA NIL :IN SWANK::HANDLE-REQUESTS))
 71: ((LAMBDA NIL :IN SWANK::HANDLE-REQUESTS))
 72: (SWANK/SBCL::CALL-WITH-BREAK-HOOK #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA NIL :IN SWANK::HANDLE-REQUESTS) {1009A0FD1B}>)
 73: ((FLET SWANK/BACKEND:CALL-WITH-DEBUGGER-HOOK :IN "/home/samuel/.quicklisp/dists/quicklisp/software/slime-2.14/swank/sbcl.lisp") #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA NIL :IN SWANK::H..
 74: (SWANK::CALL-WITH-BINDINGS ((*STANDARD-OUTPUT* . #1=#<SWANK/GRAY::SLIME-OUTPUT-STREAM {1009994043}>) (*STANDARD-INPUT* . #2=#<SWANK/GRAY::SLIME-INPUT-STREAM {1002D90103}>) (*TRACE-OUTPUT* . #1#) (*ERR..
 75: (SWANK::HANDLE-REQUESTS #<SWANK::MULTITHREADED-CONNECTION {1009330003}> NIL)
 76: ((FLET #:WITHOUT-INTERRUPTS-BODY-1156 :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
 77: ((FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
 78: ((FLET #:WITHOUT-INTERRUPTS-BODY-608 :IN SB-THREAD::CALL-WITH-MUTEX))
 79: (SB-THREAD::CALL-WITH-MUTEX #<CLOSURE (FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE) {7FFFF0A9ED5B}> #<SB-THREAD:MUTEX "thread result lock" owner: #<SB-THREAD:THR..
 80: (SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE #<SB-THREAD:THREAD "repl-thread" RUNNING {1009A18033}> NIL #<CLOSURE (LAMBDA NIL :IN SWANK-REPL::SPAWN-REPL-THREAD) {10099FFF9B}> (#<SB-THREAD:THREAD "re..
 81: ("foreign function: call_into_lisp")
 82: ("foreign function: new_thread_trampoline")
tmccombs commented 9 years ago

I can't think of anything obvious. I'll look into it tomorrow.

Maybe you could try loading serapeum before collie lower?

samebchase commented 9 years ago

Okay, I'll try that.

tmccombs commented 9 years ago

This doesn't happen for me. What version of sbcl and asdf are you using?

tmccombs commented 9 years ago

Also, if you find a solution I would be happy to merge a pull request.

tmccombs commented 9 years ago

@samebchase are you still having issues with this?

samebchase commented 9 years ago

@tmccombs: I'll see if I can try it out today.

samebchase commented 9 years ago

I just tried loading serapeum before colliflower and I got the same error as before.

tmccombs commented 9 years ago

Could you tell me what version of sbcl and asdf you are using?

You can get them with:

(lisp-implementation-version) ; sbcl version
(asdf:asdf-version)  ; asdf version
samebchase commented 8 years ago

I've come out of my home country, so won't have access to my computer until Monday. I shall try that when I get back.

Thanks for your time, :-)