You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by xu...@apache.org on 2025/10/13 06:44:10 UTC
(opendal-reqsign) 01/01: feat(context-file-read-tokio): Allow file read token been built on wasm
This is an automated email from the ASF dual-hosted git repository.
xuanwo pushed a commit to branch file-tokio-support-wasm
in repository https://gitbox.apache.org/repos/asf/opendal-reqsign.git
commit 2bdbbfc4cdc0c43831b7b2ba0db59a69f5a62635
Author: Xuanwo <gi...@xuanwo.io>
AuthorDate: Mon Oct 13 14:43:33 2025 +0800
feat(context-file-read-tokio): Allow file read token been built on wasm
Signed-off-by: Xuanwo <gi...@xuanwo.io>
---
context/file-read-tokio/Cargo.toml | 2 ++
context/file-read-tokio/src/lib.rs | 11 +++++++++++
2 files changed, 13 insertions(+)
diff --git a/context/file-read-tokio/Cargo.toml b/context/file-read-tokio/Cargo.toml
index b8599c4..8248096 100644
--- a/context/file-read-tokio/Cargo.toml
+++ b/context/file-read-tokio/Cargo.toml
@@ -32,6 +32,8 @@ rust-version.workspace = true
anyhow = { workspace = true }
async-trait = { workspace = true }
reqsign-core = { workspace = true }
+
+[target.'cfg(not(target_family = "wasm"))'.dependencies]
tokio = { version = "1", features = ["fs"] }
[dev-dependencies]
diff --git a/context/file-read-tokio/src/lib.rs b/context/file-read-tokio/src/lib.rs
index 05a155d..565c1c1 100644
--- a/context/file-read-tokio/src/lib.rs
+++ b/context/file-read-tokio/src/lib.rs
@@ -74,6 +74,7 @@ use reqsign_core::{Error, FileRead, Result};
#[derive(Debug, Clone, Copy, Default)]
pub struct TokioFileRead;
+#[cfg(not(target_family = "wasm"))]
#[async_trait]
impl FileRead for TokioFileRead {
async fn file_read(&self, path: &str) -> Result<Vec<u8>> {
@@ -82,3 +83,13 @@ impl FileRead for TokioFileRead {
.map_err(|e| Error::unexpected("failed to read file").with_source(e))
}
}
+
+#[cfg(target_family = "wasm")]
+#[async_trait]
+impl FileRead for TokioFileRead {
+ async fn file_read(&self, _path: &str) -> Result<Vec<u8>> {
+ Err(Error::unexpected(
+ "TokioFileRead is unsupported on wasm targets",
+ ))
+ }
+}