From c0f06beb4d2b70876f356b5ca70861d5645fda2a Mon Sep 17 00:00:00 2001 From: kjuulh Date: Mon, 12 Jan 2026 10:39:59 +0100 Subject: [PATCH] feat: don't use nightly features --- Cargo.lock | 2 +- Cargo.toml | 2 +- crates/nocontrol/src/lib.rs | 2 -- crates/nocontrol/src/operator.rs | 2 +- crates/nocontrol/tests/mod.rs | 1 + examples/kubernetes-like/src/main.rs | 16 ++++------------ 6 files changed, 8 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 97c148a..ad94177 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -544,7 +544,7 @@ dependencies = [ [[package]] name = "nocontrol" -version = "0.0.1" +version = "0.0.2" dependencies = [ "anyhow", "async-trait", diff --git a/Cargo.toml b/Cargo.toml index c5a4456..0587ed6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ members = ["crates/*", "examples/*"] resolver = "2" [workspace.package] -version = "0.0.1" +version = "0.0.2" [workspace.dependencies] nocontrol = { path = "crates/nocontrol" } diff --git a/crates/nocontrol/src/lib.rs b/crates/nocontrol/src/lib.rs index d07b90a..cb6d0b2 100644 --- a/crates/nocontrol/src/lib.rs +++ b/crates/nocontrol/src/lib.rs @@ -1,5 +1,3 @@ -#![feature(associated_type_defaults)] - mod control_plane; pub use control_plane::ControlPlane; diff --git a/crates/nocontrol/src/operator.rs b/crates/nocontrol/src/operator.rs index fcc77cc..2f20fb8 100644 --- a/crates/nocontrol/src/operator.rs +++ b/crates/nocontrol/src/operator.rs @@ -9,7 +9,7 @@ pub trait Specification: Clone + Serialize + DeserializeOwned { #[allow(dead_code, unused_variables)] pub trait Operator: Send + Sync + 'static { type Specifications: Specification; - type Error = anyhow::Error; + type Error; fn reconcile( &self, diff --git a/crates/nocontrol/tests/mod.rs b/crates/nocontrol/tests/mod.rs index cf250a2..e918b0e 100644 --- a/crates/nocontrol/tests/mod.rs +++ b/crates/nocontrol/tests/mod.rs @@ -51,6 +51,7 @@ pub struct MyOperator {} impl Operator for MyOperator { type Specifications = Specifications; + type Error = anyhow::Error; async fn reconcile( &self, diff --git a/examples/kubernetes-like/src/main.rs b/examples/kubernetes-like/src/main.rs index fc255b2..a76573b 100644 --- a/examples/kubernetes-like/src/main.rs +++ b/examples/kubernetes-like/src/main.rs @@ -103,6 +103,7 @@ impl ProcessOperator { impl Operator for ProcessOperator { type Specifications = Specifications; + type Error = anyhow::Error; async fn reconcile( &self, @@ -127,10 +128,7 @@ impl Operator for ProcessOperator { Some(ProcessState::Running) => { // Process is running as desired manifest_state.status.status = ManifestStatusState::Running; - tracing::info!( - "Process {} is running as desired", - spec.name - ); + tracing::info!("Process {} is running as desired", spec.name); } Some(ProcessState::Pending) | Some(ProcessState::Stopped) => { // Process is pending or stopped, start it @@ -153,10 +151,7 @@ impl Operator for ProcessOperator { } None => { // Process doesn't exist in manager, recreate - tracing::info!( - "Process {} not found, creating new", - spec.name - ); + tracing::info!("Process {} not found, creating new", spec.name); let new_id = self .process_manager .add_process(Process::new(WorkerProcess { @@ -194,10 +189,7 @@ impl Operator for ProcessOperator { match status { Some(ProcessState::Running) => { // Process is running but should be stopped - tracing::info!( - "Stopping process {} as requested", - spec.name - ); + tracing::info!("Stopping process {} as requested", spec.name); manifest_state.status.status = ManifestStatusState::Stopping; self.process_manager.stop_process(id).await?; }