Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix regression in CL:DIRECTORY for wild pathnames
We re-enable listing sub-directories of directories for wild pathnames that have NAME and TYPE of :wild. This behavior was inadvertently disabled with <889a505>. This regression broke Quicklisp's indexing of local projects directory which has implementation specific code which depends on (directory "~/quicklisp/*.*") returning both immediate sub-directories as well as files under <file:~/quicklisp/>. According to <http://www.lispworks.com/documentation/HyperSpec/Body/f_pn_mat.htm> CL:PATHNAME-MATCH-P is supposed to be consistent with CL:DIRECTORY, but this doesn't seem to be the case for SBCL, CCL, LWpro, but *is* true for ECL. ;;; This should return (t t t …) for every wildcard that one can pass ;;; to DIRECTORY (let ((wildcard #p"/Users/evenson/quicklisp/local-projects/*.*")) (mapcar (lambda (e) (pathname-match-p e wildcard)) (directory wildcard))) At this time, we choose to be compatible with the previous behavior of ABCL and the current behavior of SBCL/CCL rather than strict conformance here. This should fix <qitab/cl-protobufs#199>.
- Loading branch information