Janet 1.14.1
This release brings lots of improvements to the ev/
module, as well as bug fixes.
- Add
doc-of
for reverse documentation lookup. - Add
ev/give-supervsior
to send a message to the supervising channel. - Add
ev/gather
andchan
argument toev/go
. This new argument allows "supervisor channels"
for fibers to enable structured concurrency. - Make
-k
flag work on stdin if no files are given. - Add
flycheck
function to core. - Make
backmatch
andbackref
more expressive in pegs. - Fix buggy
string/split
. - Add
fiber/last-value
to get the value that was last yielded, errored, or signaled
by a fiber. - Remove
:generate
verb fromloop
macros. Instead, use the:in
verb
which will now work on fibers as well as other data structures. - Define
next
,get
, andin
for fibers. This lets
each
,map
, and similar iteration macros can now iterate over fibers. - Remove macro
eachy
, which can be replaced byeach
. - Add
dflt
argument to find-index. - Deprecate
file/popen
in favor ofos/spawn
. - Add
:all
keyword toev/read
andnet/read
to make them more likefile/read
. However, we
do not provide any:line
option as that requires buffering. - Change repl behavior to make Ctrl-C raise SIGINT on posix. The old behavior for Ctrl-C,
to clear the current line buffer, has been moved to Ctrl-Q. - Importing modules that start with
/
is now the only way to import from project root.
Before, this would import from / on disk. Previous imports that did not start with.
or/
are now unambiguously importing from the syspath, instead of checking both the syspath and
the project root. This is backwards incompatible and dependencies should be updated for this. - Change hash function for numbers.
- Improve error handling of
dofile
. - Bug fixes in networking and subprocess code.
- Use markdown formatting in more places for docstrings.