Release notes for RuyiSDK 0.34
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:
- https://github.com/ruyisdk/ruyi/releases/tag/0.34.0
- https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.34.0/
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.
- When
- Refactored the entry point of the
ruyi
command-line tool andruyi
's logging mechanism, eliminating most global variable usage to facilitate reuse ofruyi
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 tobinary
metadata to allow packages to declare executable commands they contain. - A new optional field
prefixes_to_unpack
is added todistfile
metadata to support partial extraction of tarballs.
- The ID of the official repository is explicitly defined as
- 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.