Open Edward-Knight opened 9 months ago
Or actually, looking at the code further, is the URL missing a ?body=
? So it should be https://github.com/apple/pkl/issues/new?body=java.lang.StackOverflowError?
Fixed by PR #73
Although #73 will ensure the URL is always valid, I don't think it's a full fix. The next line tries to URL encode the error, presumably so it can be put in the title or body of the GitHub issue
is the URL missing a
?body=
? So it should be https://github.com/apple/pkl/issues/new?body=java.lang.StackOverflowError?
Also should I open a separate issue about the stack overflow or is the current behaviour expected?
The stack overflow is expected, although arguably it's missing a stack frame (cc @stackoverflow and not just for the ironically appropriate username). In Pkl, a = a
is the simplest way to cause a stack overflow. That's essentially what you're doing here, because in output { value = output }
, the inner output
"ties a loop" with the outer output
.
Re-opening to follow up about the query parts of the URL (which may have been rolled into the URL encoding fix)
The help text output when a crash happens has a URL to help submit a bug report, however this URL is mangled due to a missing newline:
The URL is https://github.com/apple/pkl/issues/newjava.lang.StackOverflowError
instead of https://github.com/apple/pkl/issues/new.This seems to be caused by a missing newline at the end of this paragraph:https://github.com/apple/pkl/blob/6eb3d20b472f4ae53595edf13b3499520c075b76/pkl-core/src/main/java/org/pkl/core/runtime/VmExceptionRenderer.java#L57-L62
I can open a separate issue for the stack overflow if needed - seems sometimes this is caught, e.g.: