Skip to content

Janet 1.7.0

Compare
Choose a tag to compare
@bakpakin bakpakin released this 02 Feb 15:10

Many new functions and macros that should be generally useful, like assert and eachk. There is some backwards incompatibility in the Janet core with the removal of the numeric operators (==, not==, etc), removal of the emscripten build, removal of file/fileno and file/fdopen, and some changes to comparison functionality for abstract types. Many other small changes in the Changelog.

  • Remove file/fileno and file/fdopen.
  • Remove ==, not==, order<, order>, order<=, and order>=. Instead, use the normal
    comparison and equality functions.
  • Let abstract types define a hash function and comparison/equality semantics. This lets
    abstract types much better represent value types. This adds more fields to abstract types, which
    will generate warnings when compiled against other versions.
  • Remove Emscripten build. Instead, use the amalgamated source code with a custom toolchain.
  • Update documentation.
  • Add var-
  • Add module/add-paths
  • Add file/temp
  • Add mod function to core.
  • Small bug fixes
  • Allow signaling from C functions (yielding) via janet_signalv. This
    makes it easy to write C functions that work with event loops, such as
    in libuv or embedded in a game.
  • Add '%j' formatting option to the format family of functions.
  • Add defer
  • Add assert
  • Add when-with
  • Add if-with
  • Add completion to the default repl based on currently defined bindings. Also generally improve
    the repl keybindings.
  • Add eachk
  • Add eachp
  • Improve functionality of the next function. next now works on many different
    types, not just tables and structs. This allows for more generic data processing.
  • Fix thread module issue where sometimes decoding a message failed.
  • Fix segfault regression when macros are called with bad arity.