Skip to main content

Blog

See important news from the RuyiSDK team at any time

Release notes for RuyiSDK 0.34

· 3 min read

RuyiSDK 0.34 is now released. The corresponding package manager version is also 0.34.0. You can download the RuyiSDK package manager from one of the following locations:

This update mainly consists of the following changes. Happy hacking!

RuyiSDK Package Manager

  • Supported partial extraction of tarballs, to accommodate certain vendors' practice of bundling multiple software packages into a single distribution archive through their official channels.
  • Target-tuple-independent commands, such as vendor-specific flashing tools can now be additionally provided in virtual environments with ruyi venv --extra-commands-from.
  • ruyi admin format-manifest now preserves header and footer comments.
  • Telemetry feature updates:
    • When ruyi is invoked for the first time in a terminal, the user will now be asked once for a one-time immediate upload of installation information.
    • Fixed an issue where telemetry events were not recorded in ruyi's proxying mode.
    • Added support for recording package installation actions at the software repository level, allowing first-party or third-party RuyiSDK repository maintainers to understand the usage of their software.
  • Refactored the entry point of the ruyi command-line tool and ruyi's logging mechanism, eliminating most global variable usage to facilitate reuse of ruyi by other Python components in the RuyiSDK ecosystem in the future.

RuyiSDK Software Repository

The latest version of the RuyiSDK package manager is required for some packages updated in this release to be properly parsed and work. Therefore, we strongly recommend that you upgrade your ruyi to the latest version besides doing your routine ruyi update.

Reminder: Support for legacy versions of the device provisioner is now deprecated. Please update your RuyiSDK package manager as soon as possible. This support will be removed in RuyiSDK 0.35 (the next version).

  • Software repository format updates:
    • The ID of the official repository is explicitly defined as ruyisdk, for coexistence with future third-party repositories.
    • Terminology update: Renamed "flavors" that refer to non-standard behaviors to "quirks".
    • A new optional field commands is added to binary metadata to allow packages to declare executable commands they contain.
    • A new optional field prefixes_to_unpack is added to distfile metadata to support partial extraction of tarballs.
  • Improved device support:
    • board-image/revyos-sipeed-lpi4a: Updated the RevyOS image for Sipeed LicheePi 4A to 20250420 and fixed the 20250323 version.
    • Swapped the names of the version 1.0.7 "Python" and non-"Python" images for Milk-V Duo series.
  • Added packages:
    • board-util/wlink: Community-developed independent implementation of WCH-Link flashing and debugging tool.
    • source/wch-ch32v103-evt: WCH CH32V103 EVT official code example package.
    • source/wch-ch32v20x-evt: WCH CH32V20x EVT official code example package.
    • source/wch-ch32v307-evt: WCH CH32V30x & CH32V317 EVT official code example package.
    • toolchain/gnu-wch-mrs-toolchain-gcc12-bin: The GCC 12.x toolchain in the official 2.1.0 version of WCH MounRiver Studio (MRS) toolchain. The package is x86_64-only.
    • toolchain/gnu-wch-mrs-toolchain-gcc8-bin: The GCC 8.x toolchain in the official 2.1.0 version of WCH MounRiver Studio (MRS) toolchain. The package is x86_64-only.
  • Updated packages:
    • toolchain/gnu-plct-xthead: Version 3.0.1 of the Xuantie (formerly T-Head) toolchain built by PLCT using official Xuantie sources, with GCC 14.1.1.
  • Entity database updates:
    • Added entity definitions for WCH micro-architectures and CPUs.
    • Fixed CPU information for WCH boards.
  • Plugin system updates:
    • Added initial support for RISC-V 32-bit profiles.
  • Fixed formatting errors in some package declarations.