You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Support babashka.process reload for exec fn
Exposed GraalVM `ProcessProperties/exec` signature used by
babashka.process/exec.
Add new `graal?` feature (on by default) to allow folks to build/use
babashka without this specific Graal API.
On my linux dev box bb executable increased by 8kb.
Closes#1557
* Respond to PR review feedback
1. Allow all Graal ProcessProperties/exec signatures
2. Instead of a feature flag, simply check if Graal ProcessProperties
class is available before including ProcessProperties/exec.
I did not see the value of adding a has-graal-process-properties fn, so
left that part out. Lemme know if you want/need that.
* Respond to PR review feedback
Because resolves can bloat GraalVM native-image size, we like to keep
the together and obvious instead of buried and non-obvious.
version
platform
Repro on Linux, but should apply to all.
problem
Babashka comes bundled with
babashka.processs
built in.Sometimes a newer version of
babashka.process
becomes available.For example, at the time of this writing, a newer version of
babashka.process
is available with a:cmd
opt
feature.A user can opt to use the newer version via a ns reload.
This works great in general, but not for the
exec
function.repro
Given a
bb.edn
that specifies the new version:Here's a REPL session that shows the behaviour.
We'll start off using built-in babashka.process:
And now let's call a new feature that is not yet in bb (it will fail):
And we'll reload the ns to get the updated version specified in
bb.edn
and retry our command (it will work)Now let's try a call to
exec
to show the issue:expected behavior
exec
should also work after ns reload.thoughts
I am guessing that if bb exposed
org.graalvm.nativeimage.ProcessProperties/exec
this should work.next steps
I'll experiment and follow up.
The text was updated successfully, but these errors were encountered: