cxxxr / valtan

Common Lisp to JavaScript compiler
227 stars 5 forks source link

Common Lisp Package Lock Violation after SBCL Upgrade (2.3) #13

Closed jason-chandler closed 9 months ago

jason-chandler commented 1 year ago

When updating to SBCL version 2.3.x, running valtan-build will cause a package lock violation at the end of the build.

image

I took a try at adding (sb-ext:unlock-package :common-lisp) to the portion of the compiler that handles cl-to-js, but I haven't found a place to add the line that doesn't cause other problems. I will continue to look into it in my spare time, but for now I've reverted to the last version of SBCL I know to work, 2.1.4.

This is not an emergency, I just wanted to note my findings.

Thank you for this project @cxxxr, it's a work of art.

jason-chandler commented 1 year ago

backtrace-package.txt

Full backtrace for convenience.

cxxxr commented 1 year ago

Thank you for your report. I would like to look into it, but don't seem to have the time right now. If possible, I would appreciate your help.

yaktender commented 11 months ago

I also got a similar error on a mac.


> react-tic-tac-toe@1.0.0 prebuild
> valtan-build react-tic-tac-toe.system

creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/defpackage.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/defpackage.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/valtan-package.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/valtan-package.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/target-system-defs.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/target-system-defs.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/valtan-core-slash-system.asd\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/constants-and-variables.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/constants-and-variables.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/control.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/control.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/destructuring-bind.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/destructuring-bind.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/setf.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/setf.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/ffi.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/ffi.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/cons.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/cons.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/condition.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/condition.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/struct.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/struct.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/symbol.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/symbol.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/type.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/type.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/number.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/number.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/array.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/array.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/character.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/character.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/string.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/string.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/function.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/function.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/sequence.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/sequence.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/hashtable.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/hashtable.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/package.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/package.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/stream.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/stream.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/print.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/print.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/read.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/read.lisp.js.map
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/file.lisp\.js
creating /Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/file.lisp.js.map
Unhandled SB-EXT:PACKAGE-LOCKED-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
                                                   {70065003B3}>:
  Lock on package COMMON-LISP violated when renaming as COMMON-LISP while in
  package VALTAN-USER.
See also:
  The SBCL Manual, Node "Package Locks"
  The ANSI Standard, Section 11.1.2.1.2

Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {70065003B3}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SB-EXT:PACKAGE-LOCKED-ERROR "renaming as ~A~@[ with nickname~*~P ~1@*~{~A~^, ~}~]" {7009153603}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK SB-EXT:*INVOKE-DEBUGGER-HOOK* #<SB-EXT:PACKAGE-LOCKED-ERROR "renaming as ~A~@[ with nickname~*~P ~1@*~{~A~^, ~}~]" {7009153603}>)
2: (INVOKE-DEBUGGER #<SB-EXT:PACKAGE-LOCKED-ERROR "renaming as ~A~@[ with nickname~*~P ~1@*~{~A~^, ~}~]" {7009153603}>)
3: (CERROR "Ignore the package lock." SB-EXT:PACKAGE-LOCKED-ERROR :PACKAGE #<PACKAGE "COMMON-LISP"> :FORMAT-CONTROL "renaming as ~A~@[ with nickname~*~P ~1@*~{~A~^, ~}~]" :FORMAT-ARGUMENTS ("COMMON-LISP" NIL 0) :REFERENCES ((:SBCL :NODE "Package Locks") (:ANSI-CL :SECTION (11 1 2 1 2))))
4: (SB-EXT:PACKAGE-LOCK-VIOLATION #<PACKAGE "COMMON-LISP"> :SYMBOL NIL :FORMAT-CONTROL "renaming as ~A~@[ with nickname~*~P ~1@*~{~A~^, ~}~]" :FORMAT-ARGUMENTS ("COMMON-LISP" NIL 0))
5: (SB-IMPL::ASSERT-PACKAGE-UNLOCKED #<PACKAGE "COMMON-LISP"> "renaming as ~A~@[ with nickname~*~P ~1@*~{~A~^, ~}~]" "COMMON-LISP" NIL 0)
6: (RENAME-PACKAGE #<PACKAGE "COMMON-LISP"> "COMMON-LISP" NIL)
7: (SB-IMPL::UPDATE-PACKAGE #<PACKAGE "COMMON-LISP"> NIL #S(SB-C:DEFINITION-SOURCE-LOCATION :NAMESTRING NIL :INDICES 0) NIL NIL NIL NIL NIL ("&ALLOW-OTHER-KEYS" "&AUX" "&BODY" "&ENVIRONMENT" "&KEY" "&OPTIONAL" "&REST" "&WHOLE" "*" "**" "***" "*BREAK-ON-SIGNALS*" ...) ("COMMON-LISP") NIL NIL NIL)
8: ((FLET "WITHOUT-INTERRUPTS-BODY-11" :IN SB-THREAD::CALL-WITH-RECURSIVE-LOCK))
9: (SB-THREAD::CALL-WITH-RECURSIVE-LOCK #<FUNCTION (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN SB-IMPL::%DEFPACKAGE) {101411A1B}> #<SB-THREAD:MUTEX "Package Graph Lock" taken owner=main thread> T NIL)
10: (SB-IMPL::%DEFPACKAGE "COMMON-LISP" NIL NIL NIL NIL NIL NIL NIL ("&ALLOW-OTHER-KEYS" "&AUX" "&BODY" "&ENVIRONMENT" "&KEY" "&OPTIONAL" "&REST" "&WHOLE" "*" "**" "***" "*BREAK-ON-SIGNALS*" ...) ("COMMON-LISP") NIL NIL #S(SB-C:DEFINITION-SOURCE-LOCATION :NAMESTRING NIL :INDICES 0) NIL)
11: (SB-INT:SIMPLE-EVAL-IN-LEXENV (SB-IMPL::%DEFPACKAGE #1="COMMON-LISP" (QUOTE NIL) (QUOTE NIL) (QUOTE NIL) (QUOTE NIL) (QUOTE NIL) (QUOTE NIL) (QUOTE NIL) (QUOTE ("&ALLOW-OTHER-KEYS" "&AUX" "&BODY" "&ENVIRONMENT" "&KEY" "&OPTIONAL" "&REST" "&WHOLE" "*" "**" "***" "*BREAK-ON-SIGNALS*" ...)) (QUOTE (#1#)) (QUOTE NIL) ...) #<NULL-LEXENV>)
12: (SB-INT:SIMPLE-EVAL-IN-LEXENV (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)) #<NULL-LEXENV>)
13: (EVAL (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)))
14: ((LAMBDA (&REST #:G22) :IN "/Users/alko/.roswell/bin/valtan-build") :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...))
15: (COMPILER::%MACROEXPAND-1 (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)))
16: (COMPILER::PASS1 (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)) NIL NIL)
17: (COMPILER::PASS1-TOPLEVEL (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)) NIL NIL)
18: (COMPILER::PASS1-TOPLEVEL-USING-OPTIMIZE (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)) NIL)
19: ((LAMBDA (VALTAN-HOST.BUILD::FORM) :IN VALTAN-HOST.BUILD::!COMPILE-FILE) (DEFPACKAGE :COMMON-LISP (:USE) (:EXPORT #:&ALLOW-OTHER-KEYS #:&AUX #:&BODY #:&ENVIRONMENT #:&KEY #:&OPTIONAL #:&REST #:&WHOLE #:* #:** #:*** ...)))
20: ((LAMBDA NIL :IN VALTAN-HOST.READER:MAP-FILE-FORMS))
21: (VALTAN-HOST.READER::CALL-WITH-VALTAN-READER #<PACKAGE "VALTAN-USER"> #<FUNCTION (LAMBDA NIL :IN VALTAN-HOST.READER:MAP-FILE-FORMS) {7005A5A74B}>)
22: (VALTAN-HOST.BUILD::!COMPILE-FILE #P"/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/pkg.lisp" #P"/Users/alko/src/valtan/example/react-tic-tac-toe/.valtan-cache/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/pkg.lisp\\.js")
23: (VALTAN-HOST.BUILD::INVOKE-COMPILE-FILE-WITH-CACHE #P"/Users/alko/.roswell/local-projects/cxxxr/valtan/library/valtan-core/lisp/pkg.lisp" #<FUNCTION (LAMBDA NIL :IN VALTAN-HOST.BUILD::COMPILE-FILE-WITH-CACHE) {7005A5A55B}> :CACHE-KEY NIL)
24: (VALTAN-HOST.BUILD::BUILD-SYSTEM-USING-SYSTEM #S(VALTAN-HOST.SYSTEM::SYSTEM :NAME "react-tic-tac-toe" :PATHNAME #P"/Users/alko/src/valtan/example/react-tic-tac-toe/react-tic-tac-toe.system" :PATHNAMES (#P"/Users/alko/src/valtan/example/react-tic-tac-toe/main.lisp") :ENABLE-PROFILE NIL :ENABLE-SOURCE-MAP T :DEPENDS-ON ("valtan-core" "react-utilities") :TARGET NIL :ENTRY-FILE NIL) :FORCE NIL)
25: (VALTAN-HOST.BUILD:BUILD-SYSTEM "react-tic-tac-toe.system" :FORCE NIL)
26: (SB-INT:SIMPLE-EVAL-IN-LEXENV (APPLY (QUOTE ROS.SCRIPT.VALTAN-BUILD.3765950064::MAIN) ROSWELL:*ARGV*) #<NULL-LEXENV>)
27: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ROSWELL:QUIT (APPLY (QUOTE ROS.SCRIPT.VALTAN-BUILD.3765950064::MAIN) ROSWELL:*ARGV*)) #<NULL-LEXENV>)
28: (SB-EXT:EVAL-TLF (ROSWELL:QUIT (APPLY (QUOTE ROS.SCRIPT.VALTAN-BUILD.3765950064::MAIN) ROSWELL:*ARGV*)) NIL NIL)
29: ((LABELS SB-FASL::EVAL-FORM :IN SB-INT:LOAD-AS-SOURCE) (ROSWELL:QUIT (APPLY (QUOTE ROS.SCRIPT.VALTAN-BUILD.3765950064::MAIN) ROSWELL:*ARGV*)) NIL)
30: (SB-INT:LOAD-AS-SOURCE #<CONCATENATED-STREAM :STREAMS NIL {7006510313}> :VERBOSE NIL :PRINT NIL :CONTEXT "loading")
31: ((LABELS SB-FASL::LOAD-STREAM-1 :IN LOAD) #<CONCATENATED-STREAM :STREAMS NIL {7006510313}> NIL)
32: (SB-FASL::CALL-WITH-LOAD-BINDINGS #<FUNCTION (LABELS SB-FASL::LOAD-STREAM-1 :IN LOAD) {101410B4B}> #<CONCATENATED-STREAM :STREAMS NIL {7006510313}> NIL #<CONCATENATED-STREAM :STREAMS NIL {7006510313}>)
33: (LOAD #<CONCATENATED-STREAM :STREAMS NIL {7006510313}> :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST :ERROR :EXTERNAL-FORMAT :DEFAULT)
34: ((FLET ROSWELL::BODY :IN ROSWELL:SCRIPT) #<SB-SYS:FD-STREAM for "file /Users/alko/.roswell/bin/valtan-build" {7006510083}>)
35: (ROSWELL:SCRIPT "/Users/alko/.roswell/bin/valtan-build" "react-tic-tac-toe.system")
36: (ROSWELL:RUN ((:EVAL "(ros:quicklisp)") (:SCRIPT "/Users/alko/.roswell/bin/valtan-build" "react-tic-tac-toe.system") (:QUIT NIL)))
37: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ROSWELL:RUN (QUOTE ((:EVAL "(ros:quicklisp)") (:SCRIPT "/Users/alko/.roswell/bin/valtan-build" "react-tic-tac-toe.system") (:QUIT NIL)))) #<NULL-LEXENV>)
38: (EVAL (ROSWELL:RUN (QUOTE ((:EVAL "(ros:quicklisp)") (:SCRIPT "/Users/alko/.roswell/bin/valtan-build" "react-tic-tac-toe.system") (:QUIT NIL)))))
39: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:EVAL . "(progn #-ros.init(cl:load \"/opt/homebrew/Cellar/roswell/22.12.14.113/etc/roswell/init.lisp\"))") (:EVAL . "(ros:run '((:eval\"(ros:quicklisp)\")(:script \"/Users/alko/.roswell/bin/valtan-build\"\"react-tic-tac-toe.system\")(:quit ())))")))
40: (SB-IMPL::TOPLEVEL-INIT)
41: ((FLET SB-UNIX::BODY :IN SB-IMPL::START-LISP))
42: ((FLET "WITHOUT-INTERRUPTS-BODY-3" :IN SB-IMPL::START-LISP))
43: (SB-IMPL::%START-LISP)

unhandled condition in --disable-debugger mode, quitting```
jason-chandler commented 11 months ago

I’ll try to look into it this week, it had slipped my mind. I don’t think it’ll end up being a huge PR, it just seems like it’ll take a little digging.

jason-chandler commented 11 months ago

I've gotten it to build on a local branch, package-lock-fix: https://github.com/jason-chandler/valtan/commits/package-lock-fix

There are 2 issues currently with the build:

  1. The above-mentioned stricter package lock settings with one of the SBCL updates. The sb-ext:unlock-package function works fine to get past this.

TODO: If valtan is meant to be built with other implementations than SBCL, we need to add +sbcl and other directives since the unlock-package function is not in the common-lisp package

  1. The :cl package nickname is no longer working. I have not found why yet, so my branch replaces all uses of cl: with common-lisp: except in the case of use-package, which similarly uses :common-lisp instead of :cl

TODO: This is a hacky, ugly solution. It would be better to find out why the :cl nickname is no longer working instead. I will continue to look into it.

jason-chandler commented 9 months ago

Sorry for the wait. I had some time to take another look at it. It looks like resetting the package nickname prevents SBCL from throwing the unlock-error, so the internal call I mentioned earlier isn't needed. This builds for me on SBCL 2.3.7 and it's a one-liner.

cxxxr commented 9 months ago

I was also troubled by this problem yesterday when I touched valtan for the first time in a while. I tried the PR you linked to and it worked beautifully. I really appreciate it and hope to resume development in the future.