Skip to content

v0.12.0

Choose a tag to compare

@odesenfans odesenfans released this 09 Jun 23:05
· 14 commits to main since this release
a8b7b9c

Features

  • aleph token swap --venue uniswap (#250) - Uniswap V3 (Ethereum mainnet, via SwapRouter02) is now a second swap venue, selectable with --venue uniswap; CoW Swap stays the default. Useful as a fallback when thin-pair CoW orders expire unfilled, since Uniswap executes immediately at the pool price. Quoting is pure on-chain through QuoterV2 (no API key), routes target where ALEPH liquidity actually sits, and slippage is enforced on-chain via amountOutMinimum.

    aleph token swap --sell-token eth --amount 0.5 --venue uniswap
    
  • Manual aggregate editing (#252) - closes the gap with the Python aleph-client:

    • aggregate create is now create-only (refuses an existing key, pointing you to edit) and accepts any valid JSON, not just objects.
    • aggregate edit --key K updates an existing key three ways: targeted subkey (--subkey S --content C, with --content null to delete), whole-content (diffs and nulls removed subkeys), or interactive ($VISUAL/$EDITOR/vi).
    • aggregate unset --key K --subkey s1,s2 soft-deletes subkeys in bulk via merge-null.
    • All three guard the protected security aggregate and honor --on-behalf-of, --dry-run, --json, --channel, and -y.
  • aleph program update (#257) - update a deployed program's code in place: validates ownership (against owner(), so delegated programs work) and allow_amend, hashes the new archive, and submits a STORE amending the previous code hash (the program item hash is unchanged). Pre-flight errors on an encoding mismatch with the existing program. Supports --on-behalf-of, matching create.

Changes

  • aleph instance confidential create renamed to launch (#254) - the command never created the instance (the VM must already exist via instance create --confidential); it orchestrates bring-up of an existing confidential VM (allocate, init session, poll for measurement, validate and inject the disk secret). create is retained as a hidden alias, so existing scripts keep working.

Fixes

  • Clean shell prompt after Ctrl+C (#251) - interrupting a command like aleph instance logs now dies by re-raised SIGINT instead of exit(130), so bash redraws its prompt at column 0 instead of garbling the next typed line.
  • TLS certificate-validation advisories patched + cargo-audit CI (#253) - bumps rustls-webpki and aws-lc-sys to clear six RUSTSEC advisories (name-constraint/CRL bypasses and a reachable panic) on the HTTPS cert-validation path used by every CCN, CRN, CoW, and RPC call. Adds a cargo audit CI workflow (on Cargo.toml/Cargo.lock changes plus a weekly cron) so future advisories surface automatically.

Documentation

  • Refreshed --image/--runtime help (#255) - instance create help now points at the vm-images aggregate with examples instead of a hardcoded preset list, switches examples to ubuntu26, and fixes the runtime slug example to python3.12.

Published to crates.io