Skip to content

Version 0.6.0: Rich Interactions with Instances & DNS

Compare
Choose a tag to compare
@MHHukiewitz MHHukiewitz released this 15 Dec 15:33
· 91 commits to master since this release
695dee6

Introduction

The Aleph.im CLI client version 0.6.0 marks a significant milestone in the evolution of the platform, introducing a suite of powerful new features and essential fixes that dramatically enhance its functionality and user experience.

Split into aleph-client and aleph-sdk-python

A substantial portion of the codebase has been migrated from the aleph-client to the new aleph-sdk-python, streamlining the architecture and paving the way for more robust and scalable development. This change clearly distinguishes between the CLI and SDK, making development with the SDK less bloated. Many improvements to the SDK since 0.5.1 and before the migration have been collected in these release notes.

Many UI/UX Improvements

In version 0.6.0, users can expect to find exciting new functionalities such advanced instance creation capabilities and custom domain support. The release also addresses critical fixes and improvements, ensuring greater stability and smoother operation. This release brings not only functional enhancements but also significant aesthetic and usability improvements, particularly through the integration of the rich library.

New CLI Commands

  • Instance Management Commands (#178 & #192):
    • aleph instance create: Creates a new instance with the help of a wizard.
    • aleph instance delete: Deletes or forgets an existing instance.
    • aleph instance list: Lists all your instances and how to connect to them.
  • Message Signing Command (#164):
    • aleph message sign: Allows users to sign JSON strings as Aleph messages.
    • aleph account sign-raw: Signs any UTF-8 encoded string, useful for dApp development.
  • CLI Version Command (#169):
    • aleph about version, aleph -v, aleph --version: Displays the current version of the Aleph CLI.
  • File Download Command (#175):
    • aleph file download <IPFS or item_hash>: Downloads a file using either its IPFS link or Aleph item hash.
  • Account, File, and Aggregate Commands (#177):
    • aleph account balance: Returns the balance of the current user or a specified address with --address.
    • aleph file list: Lists user files or files of a specific address with --address.
    • aleph file forget: Forgets a specified file.
    • aleph aggregate post: Posts a new aggregate (can also be used for updates).
    • aleph aggregate get: Retrieves an aggregate.
  • Node Management Commands with Filtering (#184):
    • aleph node compute: Lists all compute nodes.
    • aleph node core: Lists all core channel nodes.
    • Both commands support filtering based on the owner's address (--address) and node activity (--active).

Fixes and Improvements

  • Workflow Fixes (#176, #186): Corrected the test_build.yml workflow and made aleph instance delete use async.
  • Dependency Fixes (#179, #180, #181, #182): Addressed the missing requests dependency, upgraded aleph-message to version 0.4.1, replaced requests module with aiohttp, and fixed nuls2 dependencies.

Notable Refactoring and Migrations

  • Migrate Message Commands to SDK (#163, #166): Major code migration from aleph-client to aleph-sdk-python.
  • Removal of Unused/Moved Code (#166): Cleaned up the SDK by removing unused or migrated code.
  • Update and Restrict Dependency Versions (#189, #191): Updated aleph-sdk-python to version 0.8.0 and restricted dependency versions to be fixed.

The following features and fixes have occured before the migration:

New SDK Features:

  • POST /messages/ Endpoint Support (#135): get_message now uses the POST /messages/ endpoint with additional info.
  • Raw Storage File Retrieval (#134): Feature to get raw storage files (issue #60 addressed).
  • LocalVmCache for Testing (#133): Added LocalVmCache for more efficient testing.
  • Broadcast Function Refactoring (#139): Refactored the broadcast function for efficiency.

SDK Fixes & Improvements

  • Function Immutability (#132): Addressed issue with functions not being immutable to None.
  • Private Key Storage Location (#123): Changed to store the private key in the user's home instead of the current directory.
  • Code Formatting and Type Checking (#141, #142): Formatted examples with black and enabled type checking for examples.
  • ASGI 'Lifespan' Scope Support (#155): Resolved the lack of ASGI 'lifespan' scope support.
  • Balance Await Fix (#183): Corrected missing await in aleph account balance.
  • Importing Account Fix (#185): Resolved the issue with importing account from private key.

New Contributors

@1yam: Made his first contribution in pull request #163 and implemented many of the new commands (#175, #177, #184), so awesome! 🥇

All Pull Requests

Full Changelog: 0.5.1...0.6.0