diff --git a/atrium-common/Cargo.toml b/atrium-common/Cargo.toml index 0deaee0f..9bda3a56 100644 --- a/atrium-common/Cargo.toml +++ b/atrium-common/Cargo.toml @@ -9,16 +9,10 @@ documentation = "https://docs.rs/atrium-common" readme = "README.md" repository.workspace = true license.workspace = true -keywords = ["atproto", "bluesky", "identity"] +keywords = ["atproto", "bluesky"] [dependencies] -atrium-xrpc.workspace = true -chrono = { workspace = true, features = ["serde"] } dashmap.workspace = true -hickory-proto = { workspace = true, optional = true } -serde = { workspace = true, features = ["derive"] } -serde_html_form.workspace = true -serde_json.workspace = true thiserror.workspace = true tokio = { workspace = true, default-features = false, features = ["sync"] } trait-variant.workspace = true diff --git a/atrium-common/src/lib.rs b/atrium-common/src/lib.rs index 6a309e87..8a69602e 100644 --- a/atrium-common/src/lib.rs +++ b/atrium-common/src/lib.rs @@ -1,4 +1,3 @@ -pub mod types; - pub mod resolver; pub mod store; +pub mod types; diff --git a/atrium-common/src/resolver.rs b/atrium-common/src/resolver.rs index 49f4f327..54f0124c 100644 --- a/atrium-common/src/resolver.rs +++ b/atrium-common/src/resolver.rs @@ -1,9 +1,7 @@ mod cached; -mod error; mod throttled; pub use self::cached::CachedResolver; -pub use self::error::{Error, Result}; pub use self::throttled::ThrottledResolver; use std::future::Future; @@ -42,6 +40,11 @@ mod tests { gloo_timers::future::sleep(duration).await; } + #[derive(Debug)] + struct Error; + + type Result = core::result::Result; + struct MockResolver { data: HashMap, counts: Arc>>, diff --git a/atrium-common/src/resolver/error.rs b/atrium-common/src/resolver/error.rs deleted file mode 100644 index 518cf63f..00000000 --- a/atrium-common/src/resolver/error.rs +++ /dev/null @@ -1,25 +0,0 @@ -use atrium_xrpc::http::uri::InvalidUri; -use atrium_xrpc::http::StatusCode; -use thiserror::Error; - -pub type Result = core::result::Result; - -#[derive(Error, Debug)] -pub enum Error { - #[error("resource not found")] - NotFound, - #[error("dns resolver error: {0}")] - DnsResolver(Box), - #[error(transparent)] - Http(#[from] atrium_xrpc::http::Error), - #[error("http client error: {0}")] - HttpClient(Box), - #[error("http status: {0:?}")] - HttpStatus(StatusCode), - #[error(transparent)] - SerdeJson(#[from] serde_json::Error), - #[error(transparent)] - SerdeHtmlForm(#[from] serde_html_form::ser::Error), - #[error(transparent)] - Uri(#[from] InvalidUri), -} diff --git a/atrium-oauth/identity/Cargo.toml b/atrium-oauth/identity/Cargo.toml index a0530224..6273ff77 100644 --- a/atrium-oauth/identity/Cargo.toml +++ b/atrium-oauth/identity/Cargo.toml @@ -17,33 +17,13 @@ keywords = ["atproto", "bluesky", "identity"] atrium-api = { workspace = true, default-features = false } atrium-common.workspace = true atrium-xrpc.workspace = true -dashmap.workspace = true hickory-proto = { workspace = true, optional = true } serde = { workspace = true, features = ["derive"] } serde_html_form.workspace = true serde_json.workspace = true thiserror.workspace = true -tokio = { workspace = true, default-features = false, features = ["sync"] } trait-variant.workspace = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies] -moka = { workspace = true, features = ["future"] } - -[target.'cfg(target_arch = "wasm32")'.dependencies] -lru.workspace = true -web-time.workspace = true - -[dev-dependencies] -futures.workspace = true - -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] -tokio = { workspace = true, features = ["macros", "rt-multi-thread", "time"] } - -[target.'cfg(target_arch = "wasm32")'.dev-dependencies] -gloo-timers.workspace = true -tokio = { workspace = true, features = ["time"] } -wasm-bindgen-test.workspace = true - [features] default = [] doh-handle-resolver = ["dep:hickory-proto"] diff --git a/atrium-oauth/identity/src/error.rs b/atrium-oauth/identity/src/error.rs index cdb6769b..8dc0dc6f 100644 --- a/atrium-oauth/identity/src/error.rs +++ b/atrium-oauth/identity/src/error.rs @@ -1,5 +1,4 @@ use atrium_api::types::string::Did; -use atrium_common::resolver; use atrium_xrpc::http::uri::InvalidUri; use atrium_xrpc::http::StatusCode; use thiserror::Error; @@ -36,19 +35,4 @@ pub enum Error { Uri(#[from] InvalidUri), } -impl From for Error { - fn from(error: resolver::Error) -> Self { - match error { - resolver::Error::DnsResolver(error) => Error::DnsResolver(error), - resolver::Error::Http(error) => Error::Http(error), - resolver::Error::HttpClient(error) => Error::HttpClient(error), - resolver::Error::HttpStatus(error) => Error::HttpStatus(error), - resolver::Error::SerdeJson(error) => Error::SerdeJson(error), - resolver::Error::SerdeHtmlForm(error) => Error::SerdeHtmlForm(error), - resolver::Error::Uri(error) => Error::Uri(error), - resolver::Error::NotFound => Error::NotFound, - } - } -} - pub type Result = core::result::Result; diff --git a/atrium-oauth/identity/src/identity_resolver.rs b/atrium-oauth/identity/src/identity_resolver.rs index 22b4c58b..a70e1856 100644 --- a/atrium-oauth/identity/src/identity_resolver.rs +++ b/atrium-oauth/identity/src/identity_resolver.rs @@ -31,7 +31,6 @@ impl Resolver for IdentityResolver where D: DidResolver + Send + Sync + 'static, H: HandleResolver + Send + Sync + 'static, - // Error: From + From, { type Input = str; type Output = ResolvedIdentity;