fukamachi / clack

Web server abstraction layer for Common Lisp
MIT License
1.04k stars 86 forks source link

Bare bones example failing on Windows #192

Closed GrumpyOldGandalf closed 2 months ago

GrumpyOldGandalf commented 2 months ago

Installed SBCL and Quicklisp on Windows and attempting to run the bare bones example gives a permissions error. I do not believe port 5000 is in use, and the error doesn't seem to involve port 5000 at all, so thought I'd ask here what it might mean.

* (defvar *handler*
    (clack:clackup
      (lambda (env)
        (declare (ignore env))
        '(200 (:content-type "text/plain") ("Hello, Clack!")))))

debugger invoked on a SB-INT:SIMPLE-STREAM-ERROR in thread
#<THREAD tid=42816 "main thread" RUNNING {1000A78093}>:
  couldn't read from #<SB-SYS:FD-STREAM for "socket 10.199.54.54:52294, peer: 108.157.173.44:80" {100315FD33}>:
    The system cannot open the file.

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

restarts (invokable by number or by possibly-abbreviated name):
  0: [ABORT                  ] Give up on "hunchentoot"
  1:                           Give up on "clack-handler-hunchentoot"
  2: [REGISTER-LOCAL-PROJECTS] Register local projects and try again.
  3:                           Exit debugger, returning to top level.

(SB-IMPL::FD-STREAM-READ-N-BYTES #<SB-SYS:FD-STREAM for "socket 10.199.54.54:52294, peer: 108.157.173.44:80" {100315FD33}> #(0 0 0 0 0 0 0 0 0 0 0 0 ...) #<unused argument> 0 8192 NIL)
0] 3

Not clear to me why it can't read the stream (is it a permissions error? but why?) or what exactly is the real root cause. I'll try to figure it out but would appreciate anyone who may recognize something obvious here.

GrumpyOldGandalf commented 2 months ago

UPDATE: It seems I didn't install hunchentoot before I tried to run it. I guess I assumed it was installed with it. Works fine after that.