# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. # SPDX-License-Identifier: Apache-2.0 [package] name = "openshell-core" description = "Shared library for OpenShell - proto definitions, config, and errors" version.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true repository.workspace = true [dependencies] glob = { workspace = true } prost = { workspace = true } prost-types = { workspace = true } tonic = { workspace = true, features = ["channel", "tls-native-roots"] } tonic-prost = { workspace = true } tokio = { workspace = true } thiserror = { workspace = true } miette = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } tracing = { workspace = true } url = { workspace = true } ipnet = "2" base64 = { workspace = true } chrono = { version = "0.4", default-features = false, features = ["clock", "std"], optional = true } reqwest = { workspace = true, features = ["blocking", "rustls-tls-webpki-roots"], optional = true } [features] default = ["telemetry"] ## Compile in anonymous telemetry emission support. On by default; disable with ## `--no-default-features` (plus any other features you need) for a build that ## contains no telemetry endpoint, no HTTP client, and no emission code at all. telemetry = ["dep:reqwest", "dep:chrono"] ## Expose proposals::test_helpers (`ProposalsFlagGuard`) to downstream test ## code in other crates. Enabled by openshell-sandbox and ## openshell-supervisor-network dev builds. test-helpers = [] [build-dependencies] tonic-prost-build = { workspace = true } protobuf-src = { workspace = true } [dev-dependencies] tempfile = "3" [lints] workspace = true