Releasing Linera SDK v0.11

Releasing Linera SDK v0.11

We are happy to announce the release of Linera SDK v0.11!

The SDK has been simplified and extended in many ways to make it easier to build a wide variety of applications.

Instructions to deploy applications on the new corresponding Devnet (devnet-2024-05-07) can be found on https://linera.dev.

Wasm bindgen and VM upgrade

We rolled out a new generic framework to generate API stubs for Wasm containers, called “Witty”. Witty replaces wit-bindgen on the host side. It generates stubs that are compatible with wit-bindgen in Wasm guests.

This means that Wasm-compatible source languages supported by wit-bindgen will be easier to support in the future.

This change also allowed us to upgrade to Wasmer v4.

API Simplifications

We improved naming and made applications control their persistent state more explicitly. This simplification allowed us to use a simple mocked runtime and the default native target for unit tests, removing the need for a custom test runner for Wasm.

We also stopped using Result to manage errors in contract APIs because of the gas costs.

New features

Application services can now access the Internet, as showcased by the new LLM Stories example.

We also added an experimental support for HTTP queries in contracts, using a new oracle mechanism.

Initial support for Ethereum interoperability has been added, which will make use of this feature.

New examples

We added instructions to use the AMM application for atomic swaps between two users using a shared chain.

We added an AI demo where the service part of an application can run an LLM model to generate short stories.

Core Protocol

We made a configurable policy for accepting/rejecting incoming messages.

We added the commands linera wallet forget-keys and forget-chain.

We made progress in the support of fallback leaders and public chains.

6 Likes