From 347ef56d560851b2734068d0c0e322a0e8a32d2f Mon Sep 17 00:00:00 2001 From: fluo10 Date: Sun, 24 Aug 2025 12:26:44 +0900 Subject: [PATCH] Fix errors --- Cargo.toml | 6 ++++-- cli/src/cli/peer/list.rs | 4 ++-- cli/src/cli/peer/mod.rs | 2 +- core/src/config/mod.rs | 10 +++++----- core/src/config/p2p.rs | 10 +++++----- core/src/config/rpc.rs | 4 ++-- core/src/config/storage.rs | 8 ++++---- examples/demo/core/src/server.rs | 10 +++++----- examples/demo/desktop/src/cli/mod.rs | 4 ++-- examples/demo/desktop/src/main.rs | 4 ++-- src/lib.rs | 14 +++++++++++--- 11 files changed, 43 insertions(+), 33 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 234b968..c3c548d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,9 +7,11 @@ license.workspace = true repository.workspace = true [features] -default = ["dep:caretta-sync-macros"] +default = ["macros"] mobile = ["dep:caretta-sync-mobile"] -desktop = ["dep:caretta-sync-cli"] +cli = ["dep:caretta-sync-cli"] +desktop = ["cli"] +macros = ["dep:caretta-sync-macros"] test = ["caretta-sync-core/test"] [dependencies] diff --git a/cli/src/cli/peer/list.rs b/cli/src/cli/peer/list.rs index 4eb2996..73fd7ae 100644 --- a/cli/src/cli/peer/list.rs +++ b/cli/src/cli/peer/list.rs @@ -1,5 +1,5 @@ use clap::Args; -use caretta_core::{ +use caretta_sync_core::{ utils::runnable::Runnable, proto::*, }; @@ -15,7 +15,7 @@ impl Runnable for PeerListCommandArgs { async fn run(self, app_name: &'static str) { let config = self.config.into_config(app_name).await; let path = String::from("unix://") + config.rpc.socket_path.as_os_str().to_str().expect("Invalid string"); - let mut client = caretta_core::proto::cached_peer_service_client::CachedPeerServiceClient::connect(path).await.expect("Unix socket should be accessible"); + let mut client = caretta_sync_core::proto::cached_peer_service_client::CachedPeerServiceClient::connect(path).await.expect("Unix socket should be accessible"); let request = tonic::Request::new(CachedPeerListRequest {}); let response = client.list(request).await.expect("Faild to request/response"); println!("{:?}", response); diff --git a/cli/src/cli/peer/mod.rs b/cli/src/cli/peer/mod.rs index 9f1e985..b2421dc 100644 --- a/cli/src/cli/peer/mod.rs +++ b/cli/src/cli/peer/mod.rs @@ -6,7 +6,7 @@ pub use info::*; pub use list::*; pub use ping::*; -use caretta_core::utils::runnable::Runnable; +use caretta_sync_core::utils::runnable::Runnable; use clap::{Args, Subcommand}; diff --git a/core/src/config/mod.rs b/core/src/config/mod.rs index 77d044f..a1718b8 100644 --- a/core/src/config/mod.rs +++ b/core/src/config/mod.rs @@ -13,7 +13,7 @@ pub use storage::{StorageConfig, PartialStorageConfig}; pub use p2p::{P2pConfig, PartialP2pConfig}; pub use rpc::*; -#[cfg(feature="desktop")] +#[cfg(feature="cli")] use clap::Args; #[derive(Clone, Debug)] @@ -52,14 +52,14 @@ impl TryFrom for Config { } } -#[cfg_attr(feature="desktop", derive(Args))] +#[cfg_attr(feature="cli", derive(Args))] #[derive(Clone, Debug, Deserialize, PartialEq, Serialize)] pub struct PartialConfig { - #[cfg_attr(feature="desktop", command(flatten))] + #[cfg_attr(feature="cli", command(flatten))] pub p2p: Option, - #[cfg_attr(feature="desktop", command(flatten))] + #[cfg_attr(feature="cli", command(flatten))] pub storage: Option, - #[cfg_attr(feature="desktop", command(flatten))] + #[cfg_attr(feature="cli", command(flatten))] pub rpc: Option, } diff --git a/core/src/config/p2p.rs b/core/src/config/p2p.rs index 9fd0e91..970c144 100644 --- a/core/src/config/p2p.rs +++ b/core/src/config/p2p.rs @@ -1,7 +1,7 @@ use std::{net::{IpAddr, Ipv4Addr}, ops, path::{Path, PathBuf}}; use base64::{prelude::BASE64_STANDARD, Engine}; -#[cfg(feature="desktop")] +#[cfg(feature="cli")] use clap::Args; use futures::StreamExt; use libp2p::{identity::{self, DecodingError, Keypair}, noise, ping, swarm::SwarmEvent, tcp, yamux, Swarm}; @@ -81,14 +81,14 @@ impl TryFrom for P2pConfig { } } -#[cfg_attr(feature="desktop",derive(Args))] +#[cfg_attr(feature="cli",derive(Args))] #[derive(Clone, Debug, Deserialize, Serialize, PartialEq)] pub struct PartialP2pConfig { - #[cfg_attr(feature="desktop",arg(long))] + #[cfg_attr(feature="cli",arg(long))] pub private_key: Option, - #[cfg_attr(feature="desktop",arg(long))] + #[cfg_attr(feature="cli",arg(long))] pub listen_ips: Option>, - #[cfg_attr(feature="desktop",arg(long))] + #[cfg_attr(feature="cli",arg(long))] pub port: Option, } impl PartialP2pConfig { diff --git a/core/src/config/rpc.rs b/core/src/config/rpc.rs index da1c9bd..14a985b 100644 --- a/core/src/config/rpc.rs +++ b/core/src/config/rpc.rs @@ -1,5 +1,5 @@ use std::{net::{IpAddr, Ipv4Addr, SocketAddr, TcpListener}, path::PathBuf, str::FromStr}; -#[cfg(feature="desktop")] +#[cfg(feature="cli")] use clap::Args; use crate::{config::PartialConfig, utils::{emptiable::Emptiable, mergeable::Mergeable}}; use libp2p::mdns::Config; @@ -24,7 +24,7 @@ impl TryFrom for RpcConfig { } } -#[cfg_attr(feature="desktop", derive(Args))] +#[cfg_attr(feature="cli", derive(Args))] #[derive(Clone, Debug, Deserialize, Serialize, PartialEq)] pub struct PartialRpcConfig { pub socket_path: Option, diff --git a/core/src/config/storage.rs b/core/src/config/storage.rs index 62460e1..a6f2ead 100644 --- a/core/src/config/storage.rs +++ b/core/src/config/storage.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -#[cfg(feature="desktop")] +#[cfg(feature="cli")] use clap::Args; #[cfg(any(test, feature="test"))] @@ -25,12 +25,12 @@ impl TryFrom for StorageConfig { }) } } -#[cfg_attr(feature="desktop", derive(Args))] +#[cfg_attr(feature="cli", derive(Args))] #[derive(Clone, Debug, Deserialize, PartialEq, Serialize)] pub struct PartialStorageConfig { - #[cfg_attr(feature="desktop", arg(long))] + #[cfg_attr(feature="cli", arg(long))] pub data_directory: Option, - #[cfg_attr(feature="desktop", arg(long))] + #[cfg_attr(feature="cli", arg(long))] pub cache_directory: Option, } diff --git a/examples/demo/core/src/server.rs b/examples/demo/core/src/server.rs index 7044758..66885f6 100644 --- a/examples/demo/core/src/server.rs +++ b/examples/demo/core/src/server.rs @@ -1,4 +1,4 @@ -use caretta::{ +use caretta_sync::{ config::P2pConfig, proto::cached_peer_service_server::CachedPeerServiceServer, server::ServerTrait, @@ -12,7 +12,7 @@ use tokio_stream::wrappers::UnixListenerStream; pub struct Server{} impl ServerTrait for Server { - async fn serve_p2p(config: &T) -> Result<(), caretta::error::Error> + async fn serve_p2p(config: &T) -> Result<(), caretta_sync::error::Error> where T: AsRef { @@ -23,7 +23,7 @@ impl ServerTrait for Server { noise::Config::new, yamux::Config::default, )? - .with_behaviour(|keypair| caretta::p2p::Behaviour::try_from(keypair).unwrap())? + .with_behaviour(|keypair| caretta_sync::p2p::Behaviour::try_from(keypair).unwrap())? .build(); swarm.listen_on("/ip4/0.0.0.0/tcp/0".parse()?)?; loop{ @@ -41,8 +41,8 @@ impl ServerTrait for Server { } } - async fn serve_rpc(config: &T) -> Result<(), caretta::error::Error> - where T: AsRef { + async fn serve_rpc(config: &T) -> Result<(), caretta_sync::error::Error> + where T: AsRef { let path = config.as_ref().socket_path.clone(); if let Some(x) = path.parent() { if !x.exists() { diff --git a/examples/demo/desktop/src/cli/mod.rs b/examples/demo/desktop/src/cli/mod.rs index e72870b..8d59841 100644 --- a/examples/demo/desktop/src/cli/mod.rs +++ b/examples/demo/desktop/src/cli/mod.rs @@ -1,6 +1,6 @@ -use caretta_sync_example_core::server::Server; +use caretta_sync_demo_core::server::Server; use clap::{Parser, Subcommand}; -use caretta::{cli::*, utils::runnable::Runnable}; +use caretta_sync::{cli::*, utils::runnable::Runnable}; #[derive(Debug, Parser, Runnable)] diff --git a/examples/demo/desktop/src/main.rs b/examples/demo/desktop/src/main.rs index ad06129..2733b6a 100644 --- a/examples/demo/desktop/src/main.rs +++ b/examples/demo/desktop/src/main.rs @@ -1,5 +1,5 @@ -use caretta::utils::runnable::Runnable; -use caretta_sync_example_core::global::APP_NAME; +use caretta_sync::utils::runnable::Runnable; +use caretta_sync_demo_core::global::APP_NAME; use clap::Parser; use crate::cli::Cli; diff --git a/src/lib.rs b/src/lib.rs index 0641085..99c4899 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,13 @@ pub use caretta_sync_core::*; -#[cfg(feature = "desktop")] -pub use caretta_sync_desktop::*; +#[cfg(feature = "cli")] +pub use caretta_sync_cli::*; #[cfg(feature = "mobile")] -pub use caretta_sync_mobile::*; \ No newline at end of file +pub use caretta_sync_mobile::*; + +#[cfg(feature = "macros")] +pub mod utils { + pub mod runnable { + pub use caretta_sync_core::utils::runnable::Runnable; + pub use caretta_sync_macros::Runnable; + } +} \ No newline at end of file