Skip to content

v0.13.3

Choose a tag to compare

@Guest0x0 Guest0x0 released this 21 Nov 03:42
· 17 commits to main since this release
  • add experimental JavaScript backend support. Features include:
    • all IO-independent abstractions are available, including task group, timeout, async queue, semaphore etc.
    • a new package, moonbitlang/async/js_async, provides integration with JavaScript promise:
      • wait for JavaScript promise, with automatic cancellation support using AbortController
      • export async MoonBit function as JavaScript promise, again with native cancellation support via AbortSignal
  • add @async.is_being_cancelled for detecting whether current task is being cancelled. This is useful for avoiding dead loop for some code patterns, such as writing catch-all error handler inside loop body
  • ignore SIGPIPE, so that writing to a closed pipe result in a normal error instead of crashing the program
  • some other bugfix