https://github.com/WasmEdge/WasmEdge/releases/tag/0.12.1

Key features:

* New plugin system makes it easy for community to add features to WasmEdge
* New Wasm APIs for AI, observability and networking through plugins
* Advanced socket networking
* Better embedding through improved host SDKs
* Performance and compatibility enhancements

The WasmEdge plugin API provides an easy way to add, manage and package host functions into the runtime. All host capabilities, including WASI itself, are now plugins in WasmEdge. That means you can even swap in a new WASI implementation (eg for a real-time OS).

You can write plugins in C, C++ and Rust! Those plugins will be compatible with the component model making them future proof!
https://wasmedge.org/docs/contribute/plugin/intro

Some examples:

WasmEdge’s Tensorflow Lite plugin enables lightweight (1/10 of Linux containers) and fast (native GPU) AI inference apps for Tensorflow Lite models. https://wasmedge.org/docs/develop/rust/ai_inference/tensorfl...

WasmEdge’s PyTorch plugin enables lightweight (1/10 of Linux containers) and fast (native GPU) AI inference apps for PyTorch models. https://wasmedge.org/docs/develop/rust/ai_inference/pytorch/

Through the new WasmEdge plugin system, the community are adding support for libraries like zlib, OpenCV, tesseract and ffmpeg etc. Putting these together, we are supporting complex AI libraries such as Mediapipe on WasmEdge! https://github.com/yanghaku/mediapipe-rs

The Mediapipe story is esp interesting since WasmEdge is now adapted as a runtime for stream data process in products like Fluvio, Redpanda, YoMo, RisingWave and others. Mediapipe support allows developers to add AI into the stream data pipeline. https://github.com/xxchan/fluvio/pull/1

WasmEdge’s eBPF plugin enables developers to create secure and containerized eBPF tools and controllers in Kubernetes environments.
https://github.com/WasmEdge/WasmEdge/tree/master/plugins/was...

A good example of WasmEdge 0.12.1 WASI enhancement is the ability to limit the Wasm app to read-only access to files and folders.

WasmEdge sockets API is refactored in 0.12.1 to be compatible with the much more limited WASI socket proposal. WasmEdge sockets have become a super set of WASI sockets.

The WasmEdge networking sockets got new features in version 0.12.1, such as DNS, network device binding and TLS. You will be able to create sophisticated microservices that require highly-efficient non-blocking network sockets. https://github.com/second-state/wasmedge_wasi_socket

Here are several complex networking applications possible with WasmEdge sockets.
https://github.com/second-state/microservice-rust-mysql

https://github.com/WasmEdge/wasmedge-db-examples

https://github.com/WasmEdge/wasmedge_hyper_demo

WasmEdge is already one of the smallest and most efficient Wasm runtimes out there. It embeds into libsql (SQLite on the server!) to execute user definited functions to perform complex tasks like HTTPS web services & AI inference from SQL statements! https://wasmedge.org/docs/embed/use-case/libsql/

The WasmEdge C++ and Rust SDKs allow host applications to embed Wasm functions asynchronously. It is critically important in many applications where the embedded Wasm function is simply not allowed to block the execution of the host applications. https://github.com/second-state/wasmedge-rustsdk-examples/bl...

Asynchronous host SDKs are complex and a lot of work still remains. We are continuously improving it with our end user and partner communities.

Preview: https://github.com/L-jasmine/WasmEdge/tree/feat/async

What's coming next?

* Support plugins in our Docker and k8s integrations
* Wasm GC support for languages like Kotlin and Dart
* WASI thread
* Stack switching for coroutines
* Component model
* Support for inference on open source LLMs
* Better JS & Python support for AI