-
Notifications
You must be signed in to change notification settings - Fork 27
Test that buildapp does not see --dynamic-space-size
#41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Running the `tests/runtime-args-test.sh` on this branch (after `make`) as cd tests BUILDAPP=../buildapp ./runtime-args-test.sh will `describe` the `dumper` object after parsing the command line, demonstrating that the `dynamic-space-size` slot is unset.
@xach -- did you ever have a chance to look at this test? I just re-ran it with SBCL 2.5.0 and it seems that SBCL is still swallowing runtime arguments it shouldn't:
It's hard for me to tell if this is really a problem: is the fact that the DUMPER is missing
When I change the value I pass to I am willing to help debug this, but to be honest, I have no idea where to begin, since I don't know much about the internals of SBCL. |
I took a look and it seems to me like the SBCL binary saved with
:save-runtime-options t is improperly eating the command-line argument even
when memory options are saved in the core.
I can distill this down to a simple test (not involving buildapp) and ask
about it on the SBCL list.
…On Wed, Jan 29, 2025 at 5:46 PM rpgoldman ***@***.***> wrote:
@xach <https://github.com/xach> -- did you ever have a chance to look at
this test?
I just re-ran it with SBCL 2.5.0 and it seems that SBCL is still
swallowing runtime arguments it shouldn't:
$ BUILDAPP=../buildapp ./runtime-args-test.sh
#<BUILDAPP::DUMPER test-app cl-user::main>
[standard-object]
Slots with :INSTANCE allocation:
PACKAGE = #:DUMPER124
ACTIONS = ((:LOAD-SYSTEM "test-system"))
ENTRY = cl-user::main
DISPATCHED-ENTRIES = NIL
ASDF-DIRECTIVES = ((:ASDF-PATH "/Users/rpg/lisp/buildapp/tests/"))
LOAD-PATHS = NIL
SBCL = "sbcl"
CCL = "ccl"
OUTPUT = "test-app"
LOGFILE = NIL
DUMPFILE-COPY = "./dumpfile.lisp"
CORE-ONLY = NIL
COMPRESS-CORE = NIL
DYNAMIC-SPACE-SIZE = NIL
;; loading system "test-system"
It's hard for me to tell if this is really a problem: is the fact that the
DUMPER is missing dynamic-space-size a problem? Or is it just handled by
the :save-runtime-options? I do not think that is the correct
explanation, though, since I made a version of my test-app that prints the
value of (dynamic-space-size) both from inside buildapp (using --eval)
and inside the application:
(defun main (argv)
(declare (ignore argv))
(format t "~&This is the test application~%")
(format t "~&On restart, dynamic space size is ~d~%"
(dynamic-space-size))
(uiop:quit 0))
When I change the value I pass to --dynamic-space-size, neither print
changes.
I am willing to help debug this, but to be honest, I have no idea where to
begin, since I don't know much about the internals of SBCL.
—
Reply to this email directly, view it on GitHub
<#41 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAEB767O3TIJGNT6GZJS432NFK37AVCNFSM6AAAAABWD6MS2SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRTGA2DMNRQHA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Reported on https://bugs.launchpad.net/sbcl/+bug/2096995
…On Thu, Jan 30, 2025 at 6:24 AM Zach Beane ***@***.***> wrote:
I took a look and it seems to me like the SBCL binary saved with
:save-runtime-options t is improperly eating the command-line argument even
when memory options are saved in the core.
I can distill this down to a simple test (not involving buildapp) and ask
about it on the SBCL list.
On Wed, Jan 29, 2025 at 5:46 PM rpgoldman ***@***.***>
wrote:
> @xach <https://github.com/xach> -- did you ever have a chance to look at
> this test?
>
> I just re-ran it with SBCL 2.5.0 and it seems that SBCL is still
> swallowing runtime arguments it shouldn't:
>
> $ BUILDAPP=../buildapp ./runtime-args-test.sh
> #<BUILDAPP::DUMPER test-app cl-user::main>
> [standard-object]
>
> Slots with :INSTANCE allocation:
> PACKAGE = #:DUMPER124
> ACTIONS = ((:LOAD-SYSTEM "test-system"))
> ENTRY = cl-user::main
> DISPATCHED-ENTRIES = NIL
> ASDF-DIRECTIVES = ((:ASDF-PATH "/Users/rpg/lisp/buildapp/tests/"))
> LOAD-PATHS = NIL
> SBCL = "sbcl"
> CCL = "ccl"
> OUTPUT = "test-app"
> LOGFILE = NIL
> DUMPFILE-COPY = "./dumpfile.lisp"
> CORE-ONLY = NIL
> COMPRESS-CORE = NIL
> DYNAMIC-SPACE-SIZE = NIL
> ;; loading system "test-system"
>
> It's hard for me to tell if this is really a problem: is the fact that
> the DUMPER is missing dynamic-space-size a problem? Or is it just
> handled by the :save-runtime-options? I do not think that is the correct
> explanation, though, since I made a version of my test-app that prints the
> value of (dynamic-space-size) both from inside buildapp (using --eval)
> and inside the application:
>
> (defun main (argv)
> (declare (ignore argv))
> (format t "~&This is the test application~%")
> (format t "~&On restart, dynamic space size is ~d~%"
> (dynamic-space-size))
> (uiop:quit 0))
>
> When I change the value I pass to --dynamic-space-size, neither print
> changes.
>
> I am willing to help debug this, but to be honest, I have no idea where
> to begin, since I don't know much about the internals of SBCL.
>
> —
> Reply to this email directly, view it on GitHub
> <#41 (comment)>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AAAEB767O3TIJGNT6GZJS432NFK37AVCNFSM6AAAAABWD6MS2SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRTGA2DMNRQHA>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
You can follow along on the launchpad page, but it looks like SBCL changed
how it handles dynamic-space-size in 2021 and I didn't notice. There wasn't
an update to the SBCL documentation to match the change.
Either I can persuade someone to revert to the original behavior or I'll
have to update buildapp to not advertise/support this option (and update
the SBCL docs too).
…On Thu, Jan 30, 2025 at 7:06 AM Zach Beane ***@***.***> wrote:
Reported on https://bugs.launchpad.net/sbcl/+bug/2096995
On Thu, Jan 30, 2025 at 6:24 AM Zach Beane ***@***.***> wrote:
> I took a look and it seems to me like the SBCL binary saved with
> :save-runtime-options t is improperly eating the command-line argument even
> when memory options are saved in the core.
>
> I can distill this down to a simple test (not involving buildapp) and ask
> about it on the SBCL list.
>
> On Wed, Jan 29, 2025 at 5:46 PM rpgoldman ***@***.***>
> wrote:
>
>> @xach <https://github.com/xach> -- did you ever have a chance to look
>> at this test?
>>
>> I just re-ran it with SBCL 2.5.0 and it seems that SBCL is still
>> swallowing runtime arguments it shouldn't:
>>
>> $ BUILDAPP=../buildapp ./runtime-args-test.sh
>> #<BUILDAPP::DUMPER test-app cl-user::main>
>> [standard-object]
>>
>> Slots with :INSTANCE allocation:
>> PACKAGE = #:DUMPER124
>> ACTIONS = ((:LOAD-SYSTEM "test-system"))
>> ENTRY = cl-user::main
>> DISPATCHED-ENTRIES = NIL
>> ASDF-DIRECTIVES = ((:ASDF-PATH "/Users/rpg/lisp/buildapp/tests/"))
>> LOAD-PATHS = NIL
>> SBCL = "sbcl"
>> CCL = "ccl"
>> OUTPUT = "test-app"
>> LOGFILE = NIL
>> DUMPFILE-COPY = "./dumpfile.lisp"
>> CORE-ONLY = NIL
>> COMPRESS-CORE = NIL
>> DYNAMIC-SPACE-SIZE = NIL
>> ;; loading system "test-system"
>>
>> It's hard for me to tell if this is really a problem: is the fact that
>> the DUMPER is missing dynamic-space-size a problem? Or is it just
>> handled by the :save-runtime-options? I do not think that is the
>> correct explanation, though, since I made a version of my test-app that
>> prints the value of (dynamic-space-size) both from inside buildapp
>> (using --eval) and inside the application:
>>
>> (defun main (argv)
>> (declare (ignore argv))
>> (format t "~&This is the test application~%")
>> (format t "~&On restart, dynamic space size is ~d~%"
>> (dynamic-space-size))
>> (uiop:quit 0))
>>
>> When I change the value I pass to --dynamic-space-size, neither print
>> changes.
>>
>> I am willing to help debug this, but to be honest, I have no idea where
>> to begin, since I don't know much about the internals of SBCL.
>>
>> —
>> Reply to this email directly, view it on GitHub
>> <#41 (comment)>, or
>> unsubscribe
>> <https://github.com/notifications/unsubscribe-auth/AAAEB767O3TIJGNT6GZJS432NFK37AVCNFSM6AAAAABWD6MS2SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMRTGA2DMNRQHA>
>> .
>> You are receiving this because you were mentioned.Message ID:
>> ***@***.***>
>>
>
|
Running the
tests/runtime-args-test.sh
on this branch (aftermake
) aswill
describe
thedumper
object after parsing the command line, demonstrating that thedynamic-space-size
slot is unset.This branch should not be merged, but checking it out and running the test will demonstrate #36 which is the rationale for #39