This release brings several bug fixes, improvements to threading, os/execute
, the getline implementation, and even C++ support with jpm. This means you can easily use C++ in native modules for Janet, as well as standalone mixed Janet and C++ executables.
- Make
zero?
,one?
,pos?
, andneg?
polymorphic. - Add C++ support to jpm and improve C++ interop in janet.h.
- Add
%t
formatter toprintf
,string/format
, and other formatter functions. - Expose
janet_cfuns_prefix
in C API. - Add
os/proc-wait
andos/proc-kill
for interacting with processes. - Add
janet_getjfile
to C API. - Allow redirection of stdin, stdout, and stderr by passing keywords in the env table in
os/spawn
andos/execute
. - Add
os/spawn
to get a core/process back instead of an exit code as inos/execute
.
When called like this,os/execute
returns immediately. - Add
:x
flag to os/execute to raise error when exit code is non-zero. - Don't run
main
when flychecking. - Add
:n
flag tofile/open
to raise an error if file cannot be opened. - Fix import macro to not try and coerce everything to a string.
- Allow passing a second argument to
disasm
. - Add
cancel
. Resumes a fiber but makes it immediately error at the yield point. - Allow multi-line paste into built in repl.
- Add
(curenv)
. - Change
net/read
,net/chunk
, andnet/write
to raise errors in the case of failures. - Add
janet_continue_signal
to C API. This indirectly enables C functions that yield to the event loop
to raise errors or other signals. - Update meson build script to fix bug on Debian's version of meson
- Add
xprint
,xprin
,xprintf
, andxprinf
. net/write
now raises an error message if write fails.- Fix issue with SIGPIPE on macOS and BSDs.