0.21.0
New Features
Client Fetch Authentication
The azle/http_client
import has been introduced. It exports a toJwt
function that can be used for client-side authentication using fetch
and the Authorization
header.
Examples:
Canister Fetch HTTP
Canisters can now perform outgoing HTTP requests using fetch
.
Examples:
Canister Fetch File
Canisters can now request files from their local filesystem using fetch
:
Examples:
Hybrid HTTP/Candid Canisters
It is now easier to compose hybrid HTTP/Candid canisters e.g. an HTTP-based canister that exposes Candid methods, or a Candid canister that exposes HTTP endpoints.
Examples:
Optional Server Export
export default Server
is no longer required for HTTP-based canisters.
Large Asset Uploads
Files up to 2 GiB in size can now be uploaded into a canister's local filesystem. There are some issues around authentication, not all dfx identity types are currently supported. We will soon release a new version of Azle with an improvement to this problem.
Examples:
Range Requests
Canisters can now easily respond to range requests, enabling experimentation with video streaming use cases:
Examples:
Native Compilation
A --native-compilation
build flag allows for a canister to skip Podman and use a locally installed build environment.
Examples:
What's Changed
- Import fixes by @bdemann in #1675
- Http fix by @bdemann in #1676
- Audio and Video range requesting by @lastmjs in #1677
- Internet identity by @lastmjs in #1678
- Eth transfers by @lastmjs in #1690
- Update ic_evm_rpc to eip-1559 and better v calculation by @lastmjs in #1692
- Infinite files mainnet by @lastmjs in #1694
- Implement fetchIc by @lastmjs in #1679
- Fetch ic refactors by @lastmjs in #1699
- Server refactor by @lastmjs in #1697
- Native compilation by @lastmjs in #1700
- Better logs by @lastmjs in #1701
- Fetch file by @lastmjs in #1704
- Tfjs by @lastmjs in #1705
- get rid of the need for explicitly exporting Server by @lastmjs in #1711
- Backend fetch http by @lastmjs in #1706
- Stable infinite files by @bdemann in #1693
- update candid files and such by @lastmjs in #1721
- ic_evm_rpc canister candid needed an update by @lastmjs in #1723
- fix order of wasmedge-quickjs installation by @lastmjs in #1725
Full Changelog: 0.20.2...0.21.0