given:
[1] CL-USER(69): (lisp-implementation-type) "Armed Bear Common Lisp" [2] CL-USER(70): (lisp-implementation-version) "0.19.1" [3] CL-USER(73): asdf::*asdf-version* "1.666"
asdf fails to compile alexandria. translate-jar-pathname applies namestring to the null device component of a pathname and fails.
CL-USER(68): (asdf:load-system :bordeaux-threads) 0: (ASDF-UTILITIES:COERCE-NAME :BORDEAUX-THREADS) 0: COERCE-NAME returned "bordeaux-threads" 0: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 0: COERCE-NAME returned "bordeaux-threads" 0: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 0: COERCE-NAME returned "bordeaux-threads" 0: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 0: COERCE-NAME returned "bordeaux-threads" 0: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 0: COERCE-NAME returned "bordeaux-threads" 0: (ASDF::TRAVERSE #<ASDF:LOAD-OP {CF5006}> #<ASDF:SYSTEM {1F7DBD8}>) 1: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1F7DBD8}>) 1: COMPONENT-PARENT returned NIL 1: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 1: COERCE-NAME returned "bordeaux-threads" 1: (ASDF:FIND-COMPONENT NIL "bordeaux-threads" NIL) 2: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 2: COERCE-NAME returned "bordeaux-threads" 2: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 2: COERCE-NAME returned "bordeaux-threads" 2: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 2: COERCE-NAME returned "bordeaux-threads" 2: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 2: COERCE-NAME returned "bordeaux-threads" 2: (ASDF-UTILITIES:COERCE-NAME "bordeaux-threads") 2: COERCE-NAME returned "bordeaux-threads" 1: FIND-COMPONENT returned #<ASDF:SYSTEM {1F7DBD8}> 1: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1F7DBD8}>) 1: COMPONENT-PARENT returned NIL 1: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1F7DBD8}>) 1: COMPONENT-PARENT returned NIL 1: (ASDF::TRAVERSE #<ASDF:COMPILE-OP {AE4F8B}> #<ASDF:SYSTEM {1F7DBD8}>) 2: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1F7DBD8}>) 2: COMPONENT-PARENT returned NIL 2: (ASDF-UTILITIES:COERCE-NAME :ALEXANDRIA) 2: COERCE-NAME returned "alexandria" 2: (ASDF:FIND-COMPONENT NIL "alexandria" NIL) 3: (ASDF-UTILITIES:COERCE-NAME "alexandria") 3: COERCE-NAME returned "alexandria" 3: (ASDF-UTILITIES:COERCE-NAME "alexandria") 3: COERCE-NAME returned "alexandria" 3: (ASDF-UTILITIES:COERCE-NAME "alexandria") 3: COERCE-NAME returned "alexandria" 3: (ASDF-UTILITIES:COERCE-NAME "alexandria") 3: COERCE-NAME returned "alexandria" 3: (ASDF-UTILITIES:COERCE-NAME "alexandria") 3: COERCE-NAME returned "alexandria" 2: FIND-COMPONENT returned #<ASDF:SYSTEM {1768B0A}> 2: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1F7DBD8}>) 2: COMPONENT-PARENT returned NIL 2: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 2: COMPONENT-PARENT returned NIL 2: (ASDF::TRAVERSE #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:SYSTEM {1768B0A}>) 3: (ASDF::TRAVERSE #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:STATIC-FILE {7E05C4}>) 4: (ASDF:OUTPUT-FILES #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:STATIC-FILE {7E05C4}>) 4: OUTPUT-FILES returned NIL T 3: TRAVERSE returned NIL 3: (ASDF::TRAVERSE #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:STATIC-FILE {1AC8B37}>) 4: (ASDF:OUTPUT-FILES #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:STATIC-FILE {1AC8B37}>) 4: OUTPUT-FILES returned NIL T 3: TRAVERSE returned NIL 3: (ASDF::TRAVERSE #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:CL- SOURCE-FILE {F2DB2D}>) 4: (ASDF:OUTPUT-FILES #<ASDF:COMPILE-OP {1E8614A}> #<ASDF:CL-SOURCE-FILE {F2DB2D}>) 5: (ASDF:COMPONENT-PATHNAME #<ASDF:CL-SOURCE-FILE {F2DB2D}>) 6: (ASDF:COMPONENT-RELATIVE-PATHNAME #<ASDF:CL-SOURCE- FILE {F2DB2D}>) 7: (ASDF:COMPONENT-PARENT #<ASDF:CL-SOURCE-FILE {F2DB2D}>) 7: COMPONENT-PARENT returned #<ASDF:SYSTEM {1768B0A}> 7: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 7: COMPONENT-PARENT returned NIL 7: (ASDF:COMPONENT-PARENT #<ASDF:CL-SOURCE-FILE {F2DB2D}>) 7: COMPONENT-PARENT returned #<ASDF:SYSTEM {1768B0A}> 7: (ASDF:COMPONENT-PATHNAME #<ASDF:SYSTEM {1768B0A}>) 8: (ASDF:COMPONENT-RELATIVE-PATHNAME #<ASDF:SYSTEM {1768B0A}>) 9: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 9: COMPONENT-PARENT returned NIL 9: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 9: COMPONENT-PARENT returned NIL 8: COMPONENT-RELATIVE-PATHNAME returned #P"/ebs/ source/library/net/common-lisp/alexandria/" 8: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 8: COMPONENT-PARENT returned NIL 8: (ASDF-UTILITIES:TRUENAMIZE #P"/ebs/source/ metadata/net/common-lisp/bordeaux-threads/") 8: TRUENAMIZE returned #P"/ebs/source/metadata/net/ common-lisp/bordeaux-threads/" 8: (PATHNAME #P"/ebs/source/library/net/common- lisp/alexandria/") 8: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/" 8: (PATHNAME #P"/ebs/source/metadata/net/common- lisp/bordeaux-threads/") 8: PATHNAME returned #P"/ebs/source/metadata/net/ common-lisp/bordeaux-threads/" 8: (PATHNAME-DEVICE #P"/ebs/source/library/net/ common-lisp/alexandria/") 8: PATHNAME-DEVICE returned NIL 7: COMPONENT-PATHNAME returned #P"/ebs/source/ library/net/common-lisp/alexandria/" 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/" 7: (PATHNAME-DEVICE #P"/ebs/source/library/net/ common-lisp/alexandria/") 7: PATHNAME-DEVICE returned NIL 6: COMPONENT-RELATIVE-PATHNAME returned #P"./ package.lisp" 6: (ASDF:COMPONENT-PARENT #<ASDF:CL-SOURCE-FILE {F2DB2D}>) 6: COMPONENT-PARENT returned #<ASDF:SYSTEM {1768B0A}> 6: (ASDF:COMPONENT-PATHNAME #<ASDF:SYSTEM {1768B0A}>) 7: (ASDF:COMPONENT-RELATIVE-PATHNAME #<ASDF:SYSTEM {1768B0A}>) 8: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 8: COMPONENT-PARENT returned NIL 8: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 8: COMPONENT-PARENT returned NIL 7: COMPONENT-RELATIVE-PATHNAME returned #P"/ebs/ source/library/net/common-lisp/alexandria/" 7: (ASDF:COMPONENT-PARENT #<ASDF:SYSTEM {1768B0A}>) 7: COMPONENT-PARENT returned NIL 7: (ASDF-UTILITIES:TRUENAMIZE #P"/ebs/source/ metadata/net/common-lisp/bordeaux-threads/") 7: TRUENAMIZE returned #P"/ebs/source/metadata/net/ common-lisp/bordeaux-threads/" 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/" 7: (PATHNAME #P"/ebs/source/metadata/net/common-lisp/ bordeaux-threads/") 7: PATHNAME returned #P"/ebs/source/metadata/net/ common-lisp/bordeaux-threads/" 7: (PATHNAME-DEVICE #P"/ebs/source/library/net/ common-lisp/alexandria/") 7: PATHNAME-DEVICE returned NIL 6: COMPONENT-PATHNAME returned #P"/ebs/source/library/ net/common-lisp/alexandria/" 6: (PATHNAME #P"./package.lisp") 6: PATHNAME returned #P"./package.lisp" 6: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/") 6: PATHNAME returned #P"/ebs/source/library/net/common- lisp/alexandria/" 6: (PATHNAME-DEVICE #P"/ebs/source/library/net/common- lisp/alexandria/") 6: PATHNAME-DEVICE returned NIL 5: COMPONENT-PATHNAME returned #P"/ebs/source/library/ net/common-lisp/alexandria/package.lisp" 5: (ASDF::LISPIZE-PATHNAME #P"/ebs/source/library/net/ common-lisp/alexandria/package.lisp") 5: LISPIZE-PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/package.lisp" 5: (COMPILE-FILE-PATHNAME #P"/ebs/source/library/net/ common-lisp/alexandria/package.lisp") 5: COMPILE-FILE-PATHNAME returned #P"/ebs/source/library/ net/common-lisp/alexandria/package.abcl" 5: (ASDF:APPLY-OUTPUT-TRANSLATIONS #P"/ebs/source/ library/net/common-lisp/alexandria/package.abcl") 6: (ASDF-UTILITIES:TRUENAMIZE #P"/ebs/source/library/ net/common-lisp/alexandria/package.abcl") 7: (PATHNAME-DEVICE #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"ebs/") 7: PATHNAME returned #P"ebs/" 7: (PATHNAME #P"/") 7: PATHNAME returned #P"/" 7: (PATHNAME-DEVICE #P"/") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"source/") 7: PATHNAME returned #P"source/" 7: (PATHNAME #P"/ebs/") 7: PATHNAME returned #P"/ebs/" 7: (PATHNAME-DEVICE #P"/ebs/") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"library/") 7: PATHNAME returned #P"library/" 7: (PATHNAME #P"/ebs/source/") 7: PATHNAME returned #P"/ebs/source/" 7: (PATHNAME-DEVICE #P"/ebs/source/") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"net/") 7: PATHNAME returned #P"net/" 7: (PATHNAME #P"/ebs/source/library/") 7: PATHNAME returned #P"/ebs/source/library/" 7: (PATHNAME-DEVICE #P"/ebs/source/library/") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"common-lisp/") 7: PATHNAME returned #P"common-lisp/" 7: (PATHNAME #P"/ebs/source/library/net/") 7: PATHNAME returned #P"/ebs/source/library/net/" 7: (PATHNAME-DEVICE #P"/ebs/source/library/net/") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"alexandria/") 7: PATHNAME returned #P"alexandria/" 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/" 7: (PATHNAME-DEVICE #P"/ebs/source/library/net/ common-lisp/") 7: PATHNAME-DEVICE returned NIL 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/package.abcl") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl" 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/" 7: (PATHNAME-DEVICE #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl") 7: PATHNAME-DEVICE returned NIL 6: TRUENAMIZE returned #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl" 6: (PATHNAME-MATCH-P #P"/ebs/source/library/net/common- lisp/alexandria/package.abcl" #P"/home/asdf/.cache/common-lisp/ armedbear-0.19.1-linux-unknown/**/*.*") 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/package.abcl") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl" 7: (PATHNAME #P"/home/asdf/.cache/common-lisp/ armedbear-0.19.1-linux-unknown/**/*.*") 7: PATHNAME returned #P"/home/asdf/.cache/common- lisp/armedbear-0.19.1-linux-unknown/**/*.*" 6: PATHNAME-MATCH-P returned NIL 6: (PATHNAME-MATCH-P #P"/ebs/source/library/net/common- lisp/alexandria/package.abcl" #P"/:jar:file/**/*.*") 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/package.abcl") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl" 7: (PATHNAME #P"/:jar:file/**/*.*") 7: PATHNAME returned #P"/:jar:file/**/*.*" 6: PATHNAME-MATCH-P returned NIL 6: (PATHNAME-MATCH-P #P"/ebs/source/library/net/common- lisp/alexandria/package.abcl" #P"jar:file:/**/*.jar!/**/*.*") 7: (PATHNAME #P"/ebs/source/library/net/common-lisp/ alexandria/package.abcl") 7: PATHNAME returned #P"/ebs/source/library/net/ common-lisp/alexandria/package.abcl" 7: (PATHNAME #P"jar:file:/**/*.jar!/**/*.*") 7: PATHNAME returned #P"jar:file:/**/*.jar!/**/*.*" 6: PATHNAME-MATCH-P returned T 6: (PATHNAME-DEVICE #P"/ebs/source/library/net/common- lisp/alexandria/package.abcl") 6: PATHNAME-DEVICE returned NIL 6: (NAMESTRING NIL) Debugger invoked on condition of type TYPE-ERROR: The value NIL is not of type (OR PATHNAME STRING FILE-STREAM). Restarts: 0: RETRY Retry loading component :ALEXANDRIA. 1: RETRY Retry loading component "bordeaux-threads". 2: TOP-LEVEL Return to top level. [3] CL-USER(64): asdf::*output-translations* (((#P"/home/asdf/.cache/common-lisp/armedbear-0.19.1-linux-unknown/**/ *.*" #P"/home/asdf/.cache/common-lisp/armedbear-0.19.1-linux-unknown/ **/*.*") (#P"/:jar:file/**/*.*" #P"/home/asdf/.cache/common-lisp/ armedbear-0.19.1-linux-unknown/**/*.*") (#P"jar:file:/**/*.jar!/**/ *.*" #<FUNCTION ASDF::TRANSLATE-JAR-PATHNAME {170B6D}>) (#P"/**/*.*" #P"/home/asdf/.cache/common-lisp/armedbear-0.19.1-linux-unknown/**/ *.*")))
On 4/6/10 1:24 AM, james anderson wrote:
given:
[1] CL-USER(69): (lisp-implementation-type) "Armed Bear Common Lisp" [2] CL-USER(70): (lisp-implementation-version) "0.19.1" [3] CL-USER(73): asdf::*asdf-version* "1.666"
asdf fails to compile alexandria. translate-jar-pathname applies namestring to the null device component of a pathname and fails.
Acknowledged and reproduced as a bug in "somewhere" in ABCL.
ABCL built with the attached patch does not exhibit this error. The patch represents the current state branch in progress that fixes a number of things dealing with Pathnames in addition to introducing support for URLs as Pathnames. It's not immediately clear how to separate out the fix for the ASDF2 problem, so I'm planning on spending what time I've got pushing this patch towards a point to push to trunk. If someone has time to help diagnose the specific part that fixes ASDF2, I'd be happy to sponsor that commit to ABCL trunk.
Once I graft my patch to the ABCL trunk, I will tackle adding ASDF2 into the ABCL distribution.
On 4/10/10 3:25 PM, Mark Evenson wrote:
On 4/6/10 1:24 AM, james anderson wrote:
given:
[1] CL-USER(69): (lisp-implementation-type) "Armed Bear Common Lisp" [2] CL-USER(70): (lisp-implementation-version) "0.19.1" [3] CL-USER(73): asdf::*asdf-version* "1.666"
asdf fails to compile alexandria.
[…]
Once I graft my patch to the ABCL trunk, I will tackle adding ASDF2 into the ABCL distribution.
ASDF2 has been incorporated into ABCL trunk with the necessary patches, which we intend on shipping as part of abcl-0.20 for which we have a scheduled code freeze for today (01-MAY-2010).