diff --git a/Cargo.lock b/Cargo.lock index d6d1edbb..68599a2d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -338,9 +338,9 @@ dependencies = [ [[package]] name = "async-io" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed9d5715c2d329bf1b4da8d60455b99b187f27ba726df2883799af9af60997" +checksum = "6afaa937395a620e33dc6a742c593c01aced20aa376ffb0f628121198578ccc7" dependencies = [ "async-lock 3.0.0", "cfg-if 1.0.0", @@ -352,8 +352,7 @@ dependencies = [ "rustix 0.38.28", "slab", "tracing", - "waker-fn", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -399,7 +398,7 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5" dependencies = [ - "async-io 2.2.0", + "async-io 2.2.2", "async-lock 2.8.0", "atomic-waker", "cfg-if 1.0.0", @@ -2943,9 +2942,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.9" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0" +checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" dependencies = [ "libc", "log", @@ -3856,7 +3855,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "265baba7fabd416cf5078179f7d2cbeca4ce7a9041111900675ea7c4cb8a4c32" dependencies = [ "anyhow", - "itertools 0.10.5", + "itertools 0.11.0", "proc-macro2", "quote", "syn 2.0.41", @@ -5513,7 +5512,7 @@ dependencies = [ "log", "lru", "owning_ref", - "parking_lot 0.11.2", + "parking_lot 0.12.1", "serde", "serde_derive", "serial_test", @@ -5709,7 +5708,7 @@ dependencies = [ "opentelemetry", "opentelemetry-otlp", "opentelemetry-semantic-conventions", - "parking_lot 0.11.2", + "parking_lot 0.12.1", "rpassword", "serde", "serde_derive", diff --git a/veilid-python/veilid/json_api.py b/veilid-python/veilid/json_api.py index 045fd60d..748da356 100644 --- a/veilid-python/veilid/json_api.py +++ b/veilid-python/veilid/json_api.py @@ -155,7 +155,6 @@ class _JsonVeilidAPI(VeilidAPI): async def connect_ipc( cls, ipc_path: str, update_callback: Callable[[VeilidUpdate], Awaitable] ) -> Self: - print("opening pipe") if os.name=='nt': async def open_windows_pipe(path=None, *, @@ -173,8 +172,6 @@ class _JsonVeilidAPI(VeilidAPI): else: reader, writer = await asyncio.open_unix_connection(ipc_path) - print(f"reader: {vars(reader)}\nwriter: {vars(writer)}\n") - veilid_api = cls(reader, writer, update_callback) veilid_api.handle_recv_messages_task = asyncio.create_task( veilid_api.handle_recv_messages(), name="JsonVeilidAPI.handle_recv_messages" diff --git a/veilid-server/Cargo.toml b/veilid-server/Cargo.toml index edb0292b..20e090dd 100644 --- a/veilid-server/Cargo.toml +++ b/veilid-server/Cargo.toml @@ -14,16 +14,19 @@ name = "veilid-server" path = "src/main.rs" [features] -default = ["rt-tokio", "veilid-core/default"] +default = ["rt-tokio", "veilid-core/default", "otlp-tonic"] default-async-std = ["rt-async-std", "veilid-core/default-async-std"] + crypto-test = ["rt-tokio", "veilid-core/crypto-test"] crypto-test-none = ["rt-tokio", "veilid-core/crypto-test-none"] +otlp-tonic = [ "opentelemetry-otlp/grpc-tonic", "opentelemetry-otlp/trace" ] +otlp-grpc = [ "opentelemetry-otlp/grpc-sys", "opentelemetry-otlp/trace" ] + rt-async-std = [ "veilid-core/rt-async-std", "async-std", "opentelemetry/rt-async-std", - "opentelemetry-otlp/grpc-sys", ] rt-tokio = [ "veilid-core/rt-tokio", @@ -46,7 +49,7 @@ tracing-appender = "^0" tracing-opentelemetry = "0.21" # Buggy: tracing-error = "^0" opentelemetry = { version = "0.20" } -opentelemetry-otlp = { version = "0.13" } +opentelemetry-otlp = { version = "0.13", default-features = false, optional=true } opentelemetry-semantic-conventions = "0.12" async-std = { version = "^1", features = ["unstable"], optional = true } tokio = { version = "1.35.0", features = ["full", "tracing"], optional = true } diff --git a/veilid-server/src/client_api.rs b/veilid-server/src/client_api.rs index 8933444a..a8520b84 100644 --- a/veilid-server/src/client_api.rs +++ b/veilid-server/src/client_api.rs @@ -19,9 +19,11 @@ use wg::AsyncWaitGroup; const MAX_NON_JSON_LOGGING: usize = 50; cfg_if! { + if #[cfg(feature="rt-async-std")] { use futures_util::{AsyncBufReadExt, AsyncWriteExt}; - } else if #[cfg(feature="rt-tokio")] { + } else + if #[cfg(feature="rt-tokio")] { use tokio::io::AsyncBufReadExt; use tokio::io::AsyncWriteExt; } else { diff --git a/veilid-server/src/veilid_logs.rs b/veilid-server/src/veilid_logs.rs index 7f390f4f..09b4d0a6 100644 --- a/veilid-server/src/veilid_logs.rs +++ b/veilid-server/src/veilid_logs.rs @@ -3,9 +3,15 @@ use crate::*; use cfg_if::*; #[cfg(feature = "rt-tokio")] use console_subscriber::ConsoleLayer; -use opentelemetry::sdk::*; -use opentelemetry::*; -use opentelemetry_otlp::WithExportConfig; + +cfg_if::cfg_if! { + if #[cfg(feature = "opentelemetry-otlp")] { + use opentelemetry::sdk::*; + use opentelemetry::*; + use opentelemetry_otlp::WithExportConfig; + } +} + use parking_lot::*; use std::collections::BTreeMap; use std::path::*; @@ -66,6 +72,7 @@ impl VeilidLogs { } // OpenTelemetry logger + #[cfg(feature="opentelemetry-otlp")] if settingsr.logging.otlp.enabled { let grpc_endpoint = settingsr.logging.otlp.grpc_endpoint.name.clone(); diff --git a/veilid-tools/src/ipc/ipc_async_std/mod.rs b/veilid-tools/src/ipc/ipc_async_std/mod.rs index a07114e9..4bef1caf 100644 --- a/veilid-tools/src/ipc/ipc_async_std/mod.rs +++ b/veilid-tools/src/ipc/ipc_async_std/mod.rs @@ -4,7 +4,8 @@ cfg_if! { if #[cfg(unix)] { mod unix; pub use unix::*; - } else if #[cfg(windows)] { + } + else if #[cfg(windows)] { mod windows; pub use windows::*; } diff --git a/veilid-tools/src/ipc/ipc_async_std/windows.rs b/veilid-tools/src/ipc/ipc_async_std/windows.rs index e69de29b..9ba0c76f 100644 --- a/veilid-tools/src/ipc/ipc_async_std/windows.rs +++ b/veilid-tools/src/ipc/ipc_async_std/windows.rs @@ -0,0 +1 @@ +compile_error!{"async-std compilation for windows is currently unsupported"} \ No newline at end of file