robert-strandh / SICL

A fresh implementation of Common Lisp
Other
1.07k stars 79 forks source link

(sicl-boot:boot): Package "CL-UNICODE" does not exist. #168

Closed samuel-hunter closed 3 years ago

samuel-hunter commented 4 years ago

While following the directions in the README for setting up SICL, I came across this bug in SBCL 2.0.6.debian:

* (defparameter *b* (boot))
Compiling file ....
....
Compiling file "Character/upper-case-p-defun.lisp"

debugger invoked on a ECLECTOR.READER:PACKAGE-DOES-NOT-EXIST in thread
#<THREAD "main thread" RUNNING {10009F0083}>:
  Package named "CL-UNICODE" does not exist.

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [ABORT] Exit debugger, returning to top level.

(ECLECTOR.BASE:%READER-ERROR #<SICL-SOURCE-TRACKING:SOURCE-TRACKING-STREAM {1003B8C8B3}> ECLECTOR.READER:PACKAGE-DOES-NOT-EXIST :PACKAGE-NAME "CL-UNICODE")
   source: (APPLY #'ERROR DATUM :STREAM STREAM :STREAM-POSITION STREAM-POSITION
                  (ALEXANDRIA:REMOVE-FROM-PLIST ARGUMENTS :STREAM-POSITION))

Looks like whichever phase Character/upper-case-p-defun.lisp was on forgot to add cl-unicode to its dependencies, since running (require :cl-unicode) creates the package and re-trying (boot) after aborting works.

On a tangent, providing a restart such as retry-file would probably have made debugging this easier since I wouldn't have to abort and wait for all code beforehand to compile again.

robert-strandh commented 4 years ago

Fixed. Thank you.