Unreleased
Additions:
+- Support for WASIX, a new, extended standard to WASI, popularized by Wasmer.
+ - Define `WASIX` in `runtime.vars` to enable it. (`-DWASIX` on the CLI)
+ - Adds support for networking, futexes, and TTY control in WASI.
+- `switch` expressions.
+ - `switch` can appear at the expression level, and uses `case X => value` to
+ specify cases.
+- Scoped values in interfaces. `X :: ...` is allowed in an interface now.
+- `#inject` works on interfaces.
+- Polling to the `io.Stream` functionality.
+ - Used to query when data is read/write-able from a stream, for supported streams.
+ - `io.stream_poll`
+- `misc.any_unwrap` to unwrap an `any` containing an optional.
+- When debugging, `/ 0` or `% 0` will trigger an exception to debug the error.
Removals:
Changes:
+- Complete overhaul of networking in the core library.
+ - Backwards compatiblity was not strictly maintained, but common functions did
+ not change, like `socket_send` and `socket_recv`.
Bugfixes:
+- `alloc.atomic` package was broken when `sync` package was missing.
+- `X.foo` would not work if `X` was a pointer to a union.
+- Captures by pointer would break if the value was a primitive whose address wasn't
+ taken anywhere else.