Skip to content

Aleph-vm 1.2.0

Latest
Compare
Choose a tag to compare
@nesitor nesitor released this 14 Oct 10:21

We are excited to announce our release for aleph-vm in version 1.2.0 !

The team has been working hard to ship this major new release.

Bug Fixes

  • Removed support for the deprecated Debian 11 Bullseye operating system. (PR #693)
  • Fixed various issues identified in tests (PR #689, #692, #696, #697, #699, #700, #710). This includes:
    • Non-deterministic teardown during testing.
    • Test failures not being clearly indicated.
    • QEMU VM being killed prematurely before shutdown.
    • Dictionary size modification during iteration.
    • Solana wallet not being usable for VM control.
    • Errors related to confidential initialization and message fetching.
  • Ensured clearer error messages for failing test cases. (PR #697)

New Features and Improvements

  • Added a return type to the aleph.vm.utils.to_json function for better type safety. (PR #704)
  • Integrated tools for code formatting and linting:
    • pyproject-fmt (PR #707)
    • yamllint (PR #705)
  • Renamed the Hatch linting environment for clarity. (PR #706)
  • Improved user experience by displaying a message when CoCo disk creation is aborted. (PR #709)
  • Enhanced API response format for the /confidential/initialize endpoint. (PR #708)

What's Changed

  • Fix: Debian 11 Bullseye is deprecated, remove it by @hoh in #693
  • Fix 199 ruff errors by @hoh in #689
  • Problem: Non deterministic teardown by @olethanh in #696
  • Problem: Test failing not clearly by @olethanh in #697
  • Problem: QEMUVM killed before shutdown command by @olethanh in #698
  • Fix: dictionary changed size during iteration by @hoh in #699
  • Problem: Test test_websocket_logs_invalid_auth fail on Python 3.12.3 by @olethanh in #692
  • Debug Error Unknown exception while deleting address by @olethanh in #703
  • Problem: error org.freedesktop.systemd1.NoSuchUnit: Unit aleph-vm-con… by @olethanh in #702
  • feat: add return type to aleph.vm.utils.to_json by @Psycojoker in #704
  • add pyproject-fmt by @Psycojoker in #707
  • feat: add yamlfix by @Psycojoker in #705
  • chore: rename hatch lint env to linting by @Psycojoker in #706
  • Problem: Solana wallet couln't be used to control the VM by @olethanh in #700
  • Endpoint /confidential/initialize return json error now and proper https status by @olethanh in #708
  • Display message when CoCo disk creation abort by @olethanh in #709
  • Fix: Error fetching message from vm-connector for start_watch_for_messages_task by @olethanh in #710

Full Changelog: 1.1.0...1.2.0

How to upgrade

1. Upgrade the packages

This part did not change, download and install the new package as usual.

On Debian 12 (Bookworm):

rm -f /opt/aleph-vm.debian-12.deb
wget -P /opt https:/aleph-im/aleph-vm/releases/download/1.2.0/aleph-vm.debian-12.deb
apt install /opt/aleph-vm.debian-12.deb

On Ubuntu 22.04 (Jammy Jellyfish):

rm -f /opt/aleph-vm.ubuntu-22.04.deb
sudo wget -P /opt https:/aleph-im/aleph-vm/releases/download/1.2.0/aleph-vm.ubuntu-22.04.deb
sudo apt install /opt/aleph-vm.ubuntu-22.04.deb

On Ubuntu 24.04 (Noble Numbat):

rm -f /opt/aleph-vm.ubuntu-24.04.deb
sudo wget -P /opt https:/aleph-im/aleph-vm/releases/download/1.2.0/aleph-vm.ubuntu-24.04.deb
sudo apt install /opt/aleph-vm.ubuntu-24.04.deb

2. Enable Confidential Computing (optional)

In order to enable Confidential Computing on our Compute Resource Node, you must:

  1. Use an AMD CPU from the 8004 or 9004 families.
  2. Ensure that your system supports confidential computing. We have only tested Ubuntu 24.04 so far.
  3. Enable SEV and SEV-SNP in the BIOS.
  4. Enable confidential computing in the aleph-vm configuration.

Enable SEV in the configuration of aleph-vm, by default in /etc/aleph-vm/supervisor.env. This is not the default yet.

ALEPH_VM_ENABLE_CONFIDENTIAL_COMPUTING=True

After launching the server you can check the endpoint
http://localhost:4020/status/config or https://<your-node-domain>/status/config and verify that ENABLE_CONFIDENTIAL_COMPUTING has the value true.