From f9a4208bb3da126d95be1dc83a4ac20b17674a5f Mon Sep 17 00:00:00 2001 From: zehui Date: Mon, 20 Jan 2025 11:06:38 +0800 Subject: [PATCH] Doc: update rust information of STD --- README.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 8a0b00c4..642ca50b 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,8 @@ TrustZone applications with Rust's standard library (std) and many third-party libraries (i.e., crates). Teaclave TrustZone SDK is a sub-project of [Apache Teaclave (incubating)](https://teaclave.apache.org/). -Teaclave TrustZone SDK provides two development modes for Rust TAs: `no-std` and `std`. +Teaclave TrustZone SDK provides two development modes for Rust TAs: `no-std` +and `std`. We recommend using `no-std` by default. For a detailed comparison, please refer to [Comparison](#comparison). @@ -60,18 +61,20 @@ branch (`main`), please refer to the - Substantial reduction in binary size. - **Cons**: - - Limited support for third-party crates. In the no-std mode, Trusted Applications - (TAs) are unable to utilize crates dependent on the standard library (std). + - Limited support for third-party crates. In the no-std mode, Trusted + Applications (TAs) are unable to utilize crates dependent on the standard + library (std). #### `std` - **Pros**: - - Enables the utilization of more third-party crates, including those requiring - `std`, such as `serde_json` and `rustls`, which are essential for functionality. + - Enables the utilization of more third-party crates, including those + requiring `std`, such as `rustls`, which are essential for functionality. - **Cons**: - - Manual porting of `std` with infrequent updates. Currently using `std` version - `1.56.1` and `Rust` version `nightly-2021-09-20`. (Planned to update) + - Manual porting of `std` with infrequent updates. Currently using `std` + version `1.80.0` and `Rust` version `nightly-2024-05-14`, Which might not + meet the MSRV requirements of some crates. ### Supported Examples