You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by ti...@apache.org on 2025/12/01 12:14:52 UTC
(opendal) 01/01: refactor: use web-time types on wasm32 target
This is an automated email from the ASF dual-hosted git repository.
tison pushed a commit to branch wasm-time
in repository https://gitbox.apache.org/repos/asf/opendal.git
commit 63fd28c269ff4102e245bb17fda384f8780ab5eb
Author: tison <wa...@gmail.com>
AuthorDate: Mon Dec 1 20:14:35 2025 +0800
refactor: use web-time types on wasm32 target
Signed-off-by: tison <wa...@gmail.com>
---
.github/workflows/ci_core.yml | 1 +
core/Cargo.lock | 1 +
core/Cargo.toml | 1 +
core/src/layers/fastmetrics.rs | 1 -
core/src/layers/observe/metrics.rs | 2 --
core/src/layers/otelmetrics.rs | 2 --
core/src/layers/prometheus.rs | 2 --
core/src/layers/prometheus_client.rs | 1 -
core/src/layers/retry.rs | 1 -
core/src/layers/tail_cut.rs | 6 ++----
core/src/layers/timeout.rs | 2 --
core/src/raw/futures_util.rs | 5 ++---
core/src/raw/oio/write/block_write.rs | 1 -
core/src/raw/oio/write/multipart_write.rs | 2 --
core/src/raw/oio/write/position_write.rs | 1 -
core/src/raw/ops.rs | 2 +-
core/src/raw/time.rs | 6 +++++-
core/src/services/azblob/core.rs | 1 -
core/src/services/b2/core.rs | 1 -
core/src/services/cloudflare_kv/backend.rs | 1 -
core/src/services/cloudflare_kv/config.rs | 2 +-
core/src/services/cloudflare_kv/core.rs | 7 +------
core/src/services/cos/core.rs | 1 -
core/src/services/dashmap/writer.rs | 3 +--
core/src/services/dropbox/core.rs | 1 -
core/src/services/etcd/core.rs | 7 ++++---
core/src/services/ftp/core.rs | 4 +---
core/src/services/gcs/core.rs | 1 -
core/src/services/gdrive/core.rs | 1 -
core/src/services/memcached/backend.rs | 1 -
core/src/services/memcached/config.rs | 2 +-
core/src/services/memcached/core.rs | 1 -
core/src/services/mini_moka/backend.rs | 1 -
core/src/services/moka/backend.rs | 3 ---
core/src/services/monoiofs/core.rs | 3 +--
core/src/services/obs/core.rs | 1 -
core/src/services/onedrive/core.rs | 1 -
core/src/services/oss/core.rs | 1 -
core/src/services/redis/backend.rs | 1 -
core/src/services/redis/config.rs | 2 +-
core/src/services/redis/core.rs | 5 +++--
core/src/services/s3/core.rs | 1 -
core/src/services/sftp/core.rs | 1 -
core/src/types/execute/executors/tokio_executor.rs | 3 +--
core/src/types/operator/operator.rs | 1 -
core/src/types/operator/operator_futures.rs | 1 -
46 files changed, 28 insertions(+), 68 deletions(-)
diff --git a/.github/workflows/ci_core.yml b/.github/workflows/ci_core.yml
index 4d06c999a..9d13d7867 100644
--- a/.github/workflows/ci_core.yml
+++ b/.github/workflows/ci_core.yml
@@ -235,6 +235,7 @@ jobs:
services-gdrive
services-opfs
services-s3
+ layers-metrics
)
rustup target add wasm32-unknown-unknown
cargo build --target wasm32-unknown-unknown --no-default-features --features="${FEATURES[*]}" --locked
diff --git a/core/Cargo.lock b/core/Cargo.lock
index d07ed620c..ec9f24284 100644
--- a/core/Cargo.lock
+++ b/core/Cargo.lock
@@ -5432,6 +5432,7 @@ dependencies = [
"wasm-bindgen",
"wasm-bindgen-futures",
"web-sys",
+ "web-time",
]
[[package]]
diff --git a/core/Cargo.toml b/core/Cargo.toml
index a05c7a597..188b63fdf 100644
--- a/core/Cargo.toml
+++ b/core/Cargo.toml
@@ -418,6 +418,7 @@ getrandom = { version = "0.2", features = ["js"] }
jiff = { version = "0.2.15", features = ["serde", "js"] }
tokio = { version = "1.48", features = ["time"] }
uuid = { version = "1.18", features = ["serde", "v4", "js"] }
+web-time = { version = "1.1.0" }
[dev-dependencies]
criterion = { version = "0.7", features = ["async", "async_tokio"] }
diff --git a/core/src/layers/fastmetrics.rs b/core/src/layers/fastmetrics.rs
index 9b314a97b..5a9d7dfdb 100644
--- a/core/src/layers/fastmetrics.rs
+++ b/core/src/layers/fastmetrics.rs
@@ -16,7 +16,6 @@
// under the License.
use std::fmt;
-use std::time::Duration;
use fastmetrics::encoder::EncodeLabelSet;
use fastmetrics::encoder::LabelSetEncoder;
diff --git a/core/src/layers/observe/metrics.rs b/core/src/layers/observe/metrics.rs
index ea779ece1..7cf7f051d 100644
--- a/core/src/layers/observe/metrics.rs
+++ b/core/src/layers/observe/metrics.rs
@@ -22,8 +22,6 @@ use std::sync::Arc;
use std::task::Context;
use std::task::Poll;
use std::task::ready;
-use std::time::Duration;
-use std::time::Instant;
use futures::Stream;
use futures::StreamExt;
diff --git a/core/src/layers/otelmetrics.rs b/core/src/layers/otelmetrics.rs
index c5fac5c0d..0031b8ff1 100644
--- a/core/src/layers/otelmetrics.rs
+++ b/core/src/layers/otelmetrics.rs
@@ -15,8 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use std::time::Duration;
-
use opentelemetry::KeyValue;
use opentelemetry::metrics::Counter;
use opentelemetry::metrics::Histogram;
diff --git a/core/src/layers/prometheus.rs b/core/src/layers/prometheus.rs
index 175ed330a..ae86d1410 100644
--- a/core/src/layers/prometheus.rs
+++ b/core/src/layers/prometheus.rs
@@ -15,8 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use std::time::Duration;
-
use prometheus::HistogramVec;
use prometheus::Registry;
use prometheus::core::AtomicI64;
diff --git a/core/src/layers/prometheus_client.rs b/core/src/layers/prometheus_client.rs
index 846546f39..46eaa6dd4 100644
--- a/core/src/layers/prometheus_client.rs
+++ b/core/src/layers/prometheus_client.rs
@@ -16,7 +16,6 @@
// under the License.
use std::fmt;
-use std::time::Duration;
use prometheus_client::encoding::EncodeLabel;
use prometheus_client::encoding::EncodeLabelSet;
diff --git a/core/src/layers/retry.rs b/core/src/layers/retry.rs
index 59a63830f..2b60045f6 100644
--- a/core/src/layers/retry.rs
+++ b/core/src/layers/retry.rs
@@ -18,7 +18,6 @@
use std::fmt::Debug;
use std::fmt::Formatter;
use std::sync::Arc;
-use std::time::Duration;
use backon::BlockingRetryable;
use backon::ExponentialBuilder;
diff --git a/core/src/layers/tail_cut.rs b/core/src/layers/tail_cut.rs
index 42a071c60..2f70a27a7 100644
--- a/core/src/layers/tail_cut.rs
+++ b/core/src/layers/tail_cut.rs
@@ -19,8 +19,6 @@ use std::fmt::Debug;
use std::fmt::Formatter;
use std::sync::Arc;
use std::sync::atomic::{AtomicU64, AtomicUsize, Ordering};
-use std::time::Duration;
-use std::time::Instant;
use crate::raw::*;
use crate::*;
@@ -814,8 +812,8 @@ impl WindowedHistogram {
}
fn now_ms() -> u64 {
- std::time::SystemTime::now()
- .duration_since(std::time::UNIX_EPOCH)
+ SystemTime::now()
+ .duration_since(UNIX_EPOCH)
.unwrap()
.as_millis() as u64
}
diff --git a/core/src/layers/timeout.rs b/core/src/layers/timeout.rs
index 5240e8f0c..36101be7c 100644
--- a/core/src/layers/timeout.rs
+++ b/core/src/layers/timeout.rs
@@ -17,7 +17,6 @@
use std::future::Future;
use std::sync::Arc;
-use std::time::Duration;
use crate::raw::*;
use crate::*;
@@ -356,7 +355,6 @@ mod tests {
use std::future::Future;
use std::future::pending;
use std::sync::Arc;
- use std::time::Duration;
use futures::StreamExt;
use tokio::time::sleep;
diff --git a/core/src/raw/futures_util.rs b/core/src/raw/futures_util.rs
index c34499355..17134f1e6 100644
--- a/core/src/raw/futures_util.rs
+++ b/core/src/raw/futures_util.rs
@@ -115,7 +115,7 @@ pub struct ConcurrentTasks<I, O> {
executor: Executor,
/// The factory to create the task.
///
- /// Caller of ConcurrentTasks must provides a factory to create the task for executing.
+ /// Caller of ConcurrentTasks must provide a factory to create the task for executing.
///
/// The factory must accept an input and return a future that resolves to a tuple of input and
/// output result. If the given result is error, the error will be returned to users and the
@@ -318,13 +318,12 @@ impl<I: Send + 'static, O: Send + 'static> ConcurrentTasks<I, O> {
#[cfg(test)]
mod tests {
- use std::time::Duration;
-
use pretty_assertions::assert_eq;
use rand::Rng;
use tokio::time::sleep;
use super::*;
+ use crate::raw::Duration;
#[tokio::test]
async fn test_concurrent_tasks() {
diff --git a/core/src/raw/oio/write/block_write.rs b/core/src/raw/oio/write/block_write.rs
index 91d0ee80d..793da2be7 100644
--- a/core/src/raw/oio/write/block_write.rs
+++ b/core/src/raw/oio/write/block_write.rs
@@ -245,7 +245,6 @@ where
mod tests {
use std::collections::HashMap;
use std::sync::Mutex;
- use std::time::Duration;
use pretty_assertions::assert_eq;
use rand::Rng;
diff --git a/core/src/raw/oio/write/multipart_write.rs b/core/src/raw/oio/write/multipart_write.rs
index 403774826..e8b174b18 100644
--- a/core/src/raw/oio/write/multipart_write.rs
+++ b/core/src/raw/oio/write/multipart_write.rs
@@ -307,8 +307,6 @@ where
#[cfg(test)]
mod tests {
- use std::time::Duration;
-
use mea::mutex::Mutex;
use pretty_assertions::assert_eq;
use rand::Rng;
diff --git a/core/src/raw/oio/write/position_write.rs b/core/src/raw/oio/write/position_write.rs
index 45897ce61..4c4f2a9af 100644
--- a/core/src/raw/oio/write/position_write.rs
+++ b/core/src/raw/oio/write/position_write.rs
@@ -173,7 +173,6 @@ impl<W: PositionWrite> oio::Write for PositionWriter<W> {
mod tests {
use std::collections::HashSet;
use std::sync::Mutex;
- use std::time::Duration;
use pretty_assertions::assert_eq;
use rand::Rng;
diff --git a/core/src/raw/ops.rs b/core/src/raw/ops.rs
index abd89be9e..19299f949 100644
--- a/core/src/raw/ops.rs
+++ b/core/src/raw/ops.rs
@@ -21,8 +21,8 @@
use crate::options;
use crate::raw::*;
+
use std::collections::HashMap;
-use std::time::Duration;
/// Args for `create` operation.
///
diff --git a/core/src/raw/time.rs b/core/src/raw/time.rs
index 9d67931b3..2a6bc2da9 100644
--- a/core/src/raw/time.rs
+++ b/core/src/raw/time.rs
@@ -22,7 +22,11 @@ use jiff::SignedDuration;
use std::fmt;
use std::ops::{Add, AddAssign, Sub, SubAssign};
use std::str::FromStr;
-use std::time::{Duration, SystemTime};
+
+#[cfg(not(target_arch = "wasm32"))]
+pub use std::time::{Duration, Instant, SystemTime, UNIX_EPOCH};
+#[cfg(target_arch = "wasm32")]
+pub use web_time::{Duration, Instant, SystemTime, UNIX_EPOCH};
/// An instant in time represented as the number of nanoseconds since the Unix epoch.
#[derive(Default, Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
diff --git a/core/src/services/azblob/core.rs b/core/src/services/azblob/core.rs
index fe533807b..b2d615ff3 100644
--- a/core/src/services/azblob/core.rs
+++ b/core/src/services/azblob/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use base64::Engine;
use base64::prelude::BASE64_STANDARD;
diff --git a/core/src/services/b2/core.rs b/core/src/services/b2/core.rs
index b88a20598..a266d77be 100644
--- a/core/src/services/b2/core.rs
+++ b/core/src/services/b2/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Buf;
use http::Request;
diff --git a/core/src/services/cloudflare_kv/backend.rs b/core/src/services/cloudflare_kv/backend.rs
index a02515654..d0feca9be 100644
--- a/core/src/services/cloudflare_kv/backend.rs
+++ b/core/src/services/cloudflare_kv/backend.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Buf;
use http::StatusCode;
diff --git a/core/src/services/cloudflare_kv/config.rs b/core/src/services/cloudflare_kv/config.rs
index 34698f63f..27956d10a 100644
--- a/core/src/services/cloudflare_kv/config.rs
+++ b/core/src/services/cloudflare_kv/config.rs
@@ -16,13 +16,13 @@
// under the License.
use std::fmt::Debug;
-use std::time::Duration;
use serde::Deserialize;
use serde::Serialize;
use super::CLOUDFLARE_KV_SCHEME;
use super::backend::CloudflareKvBuilder;
+use crate::raw::*;
/// Cloudflare KV Service Support.
#[derive(Default, Serialize, Deserialize, Clone, PartialEq, Eq)]
diff --git a/core/src/services/cloudflare_kv/core.rs b/core/src/services/cloudflare_kv/core.rs
index 13797b587..fa1069b17 100644
--- a/core/src/services/cloudflare_kv/core.rs
+++ b/core/src/services/cloudflare_kv/core.rs
@@ -16,7 +16,6 @@
// under the License.
use std::sync::Arc;
-use std::time::Duration;
use http::Request;
use http::Response;
@@ -24,11 +23,7 @@ use http::header;
use http::request;
use serde_json::json;
-use crate::raw::Operation;
-use crate::raw::QueryPairsWriter;
-use crate::raw::new_json_serialize_error;
-use crate::raw::percent_encode_path;
-use crate::raw::{AccessorInfo, FormDataPart, Multipart, new_request_build_error};
+use crate::raw::*;
use crate::services::cloudflare_kv::model::CfKvMetadata;
use crate::{Buffer, Result};
diff --git a/core/src/services/cos/core.rs b/core/src/services/cos/core.rs
index cb3c75b38..f601dc6ba 100644
--- a/core/src/services/cos/core.rs
+++ b/core/src/services/cos/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Bytes;
use http::Request;
diff --git a/core/src/services/dashmap/writer.rs b/core/src/services/dashmap/writer.rs
index 54efe86cb..15a6ebfff 100644
--- a/core/src/services/dashmap/writer.rs
+++ b/core/src/services/dashmap/writer.rs
@@ -16,11 +16,10 @@
// under the License.
use std::sync::Arc;
-use std::time::SystemTime;
use super::core::DashmapCore;
use super::core::DashmapValue;
-use crate::raw::{OpWrite, Timestamp, oio};
+use crate::raw::*;
use crate::*;
pub struct DashmapWriter {
diff --git a/core/src/services/dropbox/core.rs b/core/src/services/dropbox/core.rs
index 396c73fe2..13545dde0 100644
--- a/core/src/services/dropbox/core.rs
+++ b/core/src/services/dropbox/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Buf;
use bytes::Bytes;
diff --git a/core/src/services/etcd/core.rs b/core/src/services/etcd/core.rs
index 24b6eea6e..2d458f27b 100644
--- a/core/src/services/etcd/core.rs
+++ b/core/src/services/etcd/core.rs
@@ -15,8 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use crate::services::etcd::error::format_etcd_error;
-use crate::{Buffer, Error, ErrorKind, Result};
use etcd_client::Client;
use etcd_client::ConnectOptions;
use fastpool::ManageObject;
@@ -24,7 +22,10 @@ use fastpool::ObjectStatus;
use fastpool::bounded;
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
+
+use crate::raw::*;
+use crate::services::etcd::error::format_etcd_error;
+use crate::{Buffer, Error, ErrorKind, Result};
pub mod constants {
pub const DEFAULT_ETCD_ENDPOINTS: &str = "http://127.0.0.1:2379";
diff --git a/core/src/services/ftp/core.rs b/core/src/services/ftp/core.rs
index afe227add..5ff027701 100644
--- a/core/src/services/ftp/core.rs
+++ b/core/src/services/ftp/core.rs
@@ -17,9 +17,7 @@
use fastpool::{ManageObject, ObjectStatus, bounded};
use futures_rustls::TlsConnector;
-use raw::Operation;
use std::sync::Arc;
-use std::time::Duration;
use suppaftp::AsyncRustlsConnector;
use suppaftp::AsyncRustlsFtpStream;
use suppaftp::FtpError;
@@ -29,7 +27,7 @@ use suppaftp::rustls::ClientConfig;
use suppaftp::types::FileType;
use super::err::format_ftp_error;
-use crate::raw::AccessorInfo;
+use crate::raw::*;
use crate::*;
pub struct FtpCore {
diff --git a/core/src/services/gcs/core.rs b/core/src/services/gcs/core.rs
index f9e88406c..35838a410 100644
--- a/core/src/services/gcs/core.rs
+++ b/core/src/services/gcs/core.rs
@@ -20,7 +20,6 @@ use std::fmt::Debug;
use std::fmt::Write;
use std::sync::Arc;
use std::sync::LazyLock;
-use std::time::Duration;
use backon::ExponentialBuilder;
use backon::Retryable;
diff --git a/core/src/services/gdrive/core.rs b/core/src/services/gdrive/core.rs
index 0b89c14b3..b854969fc 100644
--- a/core/src/services/gdrive/core.rs
+++ b/core/src/services/gdrive/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Buf;
use bytes::Bytes;
diff --git a/core/src/services/memcached/backend.rs b/core/src/services/memcached/backend.rs
index cbf6aa5c4..9544b0c7d 100644
--- a/core/src/services/memcached/backend.rs
+++ b/core/src/services/memcached/backend.rs
@@ -16,7 +16,6 @@
// under the License.
use std::sync::Arc;
-use std::time::Duration;
use super::MEMCACHED_SCHEME;
use super::config::MemcachedConfig;
diff --git a/core/src/services/memcached/config.rs b/core/src/services/memcached/config.rs
index ac8990a1d..943f38ce8 100644
--- a/core/src/services/memcached/config.rs
+++ b/core/src/services/memcached/config.rs
@@ -16,13 +16,13 @@
// under the License.
use std::fmt::Debug;
-use std::time::Duration;
use serde::Deserialize;
use serde::Serialize;
use super::MEMCACHED_SCHEME;
use super::backend::MemcachedBuilder;
+use crate::raw::*;
/// Config for MemCached services support
#[derive(Default, Serialize, Deserialize, Clone, PartialEq, Eq)]
diff --git a/core/src/services/memcached/core.rs b/core/src/services/memcached/core.rs
index c88d7b0be..25b097314 100644
--- a/core/src/services/memcached/core.rs
+++ b/core/src/services/memcached/core.rs
@@ -17,7 +17,6 @@
use fastpool::{ManageObject, ObjectStatus, bounded};
use std::sync::Arc;
-use std::time::Duration;
use tokio::net::TcpStream;
use super::binary;
diff --git a/core/src/services/mini_moka/backend.rs b/core/src/services/mini_moka/backend.rs
index 24a6b08ed..55da226cb 100644
--- a/core/src/services/mini_moka/backend.rs
+++ b/core/src/services/mini_moka/backend.rs
@@ -16,7 +16,6 @@
// under the License.
use std::sync::Arc;
-use std::time::Duration;
use log::debug;
diff --git a/core/src/services/moka/backend.rs b/core/src/services/moka/backend.rs
index ee28e15b9..dc16c82a4 100644
--- a/core/src/services/moka/backend.rs
+++ b/core/src/services/moka/backend.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use log::debug;
@@ -27,8 +26,6 @@ use super::core::*;
use super::deleter::MokaDeleter;
use super::lister::MokaLister;
use super::writer::MokaWriter;
-use crate::raw::oio;
-use crate::raw::signed_to_duration;
use crate::raw::*;
use crate::*;
diff --git a/core/src/services/monoiofs/core.rs b/core/src/services/monoiofs/core.rs
index eee84568c..009fbf2da 100644
--- a/core/src/services/monoiofs/core.rs
+++ b/core/src/services/monoiofs/core.rs
@@ -19,7 +19,6 @@ use std::mem;
use std::path::PathBuf;
use std::sync::Arc;
use std::sync::Mutex;
-use std::time::Duration;
use flume::Receiver;
use flume::Sender;
@@ -31,6 +30,7 @@ use monoio::RuntimeBuilder;
use super::MONOIOFS_SCHEME;
use crate::raw::*;
use crate::*;
+
pub const BUFFER_SIZE: usize = 2 * 1024 * 1024; // 2 MiB
/// a boxed function that spawns task in current monoio runtime
@@ -219,7 +219,6 @@ impl MonoiofsCore {
#[cfg(test)]
mod tests {
use std::sync::Arc;
- use std::time::Duration;
use futures::StreamExt;
use futures::channel::mpsc::UnboundedSender;
diff --git a/core/src/services/obs/core.rs b/core/src/services/obs/core.rs
index 33f03f549..9ed33e905 100644
--- a/core/src/services/obs/core.rs
+++ b/core/src/services/obs/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Bytes;
use http::Request;
diff --git a/core/src/services/onedrive/core.rs b/core/src/services/onedrive/core.rs
index 1867fbb65..76b334d81 100644
--- a/core/src/services/onedrive/core.rs
+++ b/core/src/services/onedrive/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Buf;
use bytes::Bytes;
diff --git a/core/src/services/oss/core.rs b/core/src/services/oss/core.rs
index 78423dd76..7bdf5456d 100644
--- a/core/src/services/oss/core.rs
+++ b/core/src/services/oss/core.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
use bytes::Bytes;
use constants::X_OSS_META_PREFIX;
diff --git a/core/src/services/redis/backend.rs b/core/src/services/redis/backend.rs
index e9b3d58a1..1b219f44f 100644
--- a/core/src/services/redis/backend.rs
+++ b/core/src/services/redis/backend.rs
@@ -17,7 +17,6 @@
use std::path::PathBuf;
use std::sync::Arc;
-use std::time::Duration;
use http::Uri;
use redis::Client;
diff --git a/core/src/services/redis/config.rs b/core/src/services/redis/config.rs
index 1f07f4a04..7df08e87c 100644
--- a/core/src/services/redis/config.rs
+++ b/core/src/services/redis/config.rs
@@ -16,13 +16,13 @@
// under the License.
use std::fmt::Debug;
-use std::time::Duration;
use serde::Deserialize;
use serde::Serialize;
use super::REDIS_SCHEME;
use super::backend::RedisBuilder;
+use crate::raw::*;
/// Config for Redis services support.
#[derive(Default, Serialize, Deserialize, Clone, PartialEq, Eq)]
diff --git a/core/src/services/redis/core.rs b/core/src/services/redis/core.rs
index f0f5de20a..08fedc5d3 100644
--- a/core/src/services/redis/core.rs
+++ b/core/src/services/redis/core.rs
@@ -17,9 +17,7 @@
use std::fmt::Debug;
use std::sync::Arc;
-use std::time::Duration;
-use crate::*;
use bytes::Bytes;
use fastpool::{ManageObject, ObjectStatus, bounded};
use redis::AsyncCommands;
@@ -34,6 +32,9 @@ use redis::aio::ConnectionManager;
use redis::cluster::ClusterClient;
use redis::cluster_async::ClusterConnection;
+use crate::raw::*;
+use crate::*;
+
#[derive(Clone)]
pub enum RedisConnection {
Normal(ConnectionManager),
diff --git a/core/src/services/s3/core.rs b/core/src/services/s3/core.rs
index 28576e4cd..6699dd2bf 100644
--- a/core/src/services/s3/core.rs
+++ b/core/src/services/s3/core.rs
@@ -19,7 +19,6 @@ use std::fmt::Debug;
use std::fmt::Display;
use std::fmt::Write;
use std::sync::Arc;
-use std::time::Duration;
use base64::Engine;
use base64::prelude::BASE64_STANDARD;
diff --git a/core/src/services/sftp/core.rs b/core/src/services/sftp/core.rs
index 2520a03d9..83ff99258 100644
--- a/core/src/services/sftp/core.rs
+++ b/core/src/services/sftp/core.rs
@@ -30,7 +30,6 @@ use std::fmt::Debug;
use std::path::Path;
use std::path::PathBuf;
use std::sync::Arc;
-use std::time::Duration;
pub struct SftpCore {
pub info: Arc<AccessorInfo>,
diff --git a/core/src/types/execute/executors/tokio_executor.rs b/core/src/types/execute/executors/tokio_executor.rs
index 72f96b01b..afb02931c 100644
--- a/core/src/types/execute/executors/tokio_executor.rs
+++ b/core/src/types/execute/executors/tokio_executor.rs
@@ -15,7 +15,7 @@
// specific language governing permissions and limitations
// under the License.
-use crate::raw::BoxedStaticFuture;
+use crate::raw::*;
use crate::*;
/// Executor that uses the [`tokio::task::spawn`] to execute futures.
@@ -34,7 +34,6 @@ mod tests {
use std::sync::Arc;
use std::sync::atomic::AtomicBool;
use std::sync::atomic::Ordering;
- use std::time::Duration;
use tokio::time::sleep;
diff --git a/core/src/types/operator/operator.rs b/core/src/types/operator/operator.rs
index 5f255ab52..d65136730 100644
--- a/core/src/types/operator/operator.rs
+++ b/core/src/types/operator/operator.rs
@@ -16,7 +16,6 @@
// under the License.
use std::future::Future;
-use std::time::Duration;
use futures::Stream;
use futures::StreamExt;
diff --git a/core/src/types/operator/operator_futures.rs b/core/src/types/operator/operator_futures.rs
index 1a1276bb1..69c15b279 100644
--- a/core/src/types/operator/operator_futures.rs
+++ b/core/src/types/operator/operator_futures.rs
@@ -22,7 +22,6 @@
use std::collections::HashMap;
use std::future::IntoFuture;
use std::ops::RangeBounds;
-use std::time::Duration;
use crate::raw::*;
use crate::*;