diff --git a/MODULE.bazel b/MODULE.bazel index 0eb52e5..20aaf13 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -106,9 +106,9 @@ git_override( ) # Rust toolchain -RUST_EDITION = "2021" +RUST_EDITION = "2024" -RUST_VERSION = "1.83.0" +RUST_VERSION = "1.93.0" rust = use_extension("@rules_rust//rust:extensions.bzl", "rust") rust.toolchain( diff --git a/examples/rust/cycle-benchmark/Cargo.toml b/examples/rust/cycle-benchmark/Cargo.toml index 37533d4..b6df939 100644 --- a/examples/rust/cycle-benchmark/Cargo.toml +++ b/examples/rust/cycle-benchmark/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "cycle-benchmark" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] path = "src/bin/cycle_bench.rs" diff --git a/examples/rust/cycle-benchmark/src/bin/cycle_bench.rs b/examples/rust/cycle-benchmark/src/bin/cycle_bench.rs index 2c964f8..a8613b7 100644 --- a/examples/rust/cycle-benchmark/src/bin/cycle_bench.rs +++ b/examples/rust/cycle-benchmark/src/bin/cycle_bench.rs @@ -208,7 +208,7 @@ mod direct_mpsc { _: ApplicationConfig, _: &TypeRegistry, _: RecordingRules, - ) -> RecorderConfig { + ) -> RecorderConfig<'_> { panic!("direct mpsc signalling does not support recorders"); } } @@ -283,7 +283,7 @@ mod direct_sockets { type_registry: &TypeRegistry, recording_rules: RecordingRules, signalling: SignallingType, - ) -> RecorderConfig { + ) -> RecorderConfig<'_> { let agent_id = params.agent_id; RecorderConfig { id: agent_id, @@ -371,7 +371,7 @@ mod relayed_sockets { type_registry: &TypeRegistry, recording_rules: RecordingRules, signalling: SignallingType, - ) -> RecorderConfig { + ) -> RecorderConfig<'_> { let agent_id = params.agent_id; let endpoints = endpoints(&app_config, signalling); RecorderConfig { diff --git a/examples/rust/cycle-benchmark/src/config.rs b/examples/rust/cycle-benchmark/src/config.rs index abd7753..f438e71 100644 --- a/examples/rust/cycle-benchmark/src/config.rs +++ b/examples/rust/cycle-benchmark/src/config.rs @@ -377,10 +377,14 @@ fn check_consistency( .copied() .collect(); - assert_eq!(all_activities_workers, depending_activities, - "Set of activities assigned to workers does not match set of activities listed as dependants in activity dependencies"); - assert_eq!(all_activities_workers, all_activities_dependencies, - "Set of activities assigned to workers does not include all activities mentioned in activity dependencies"); + assert_eq!( + all_activities_workers, depending_activities, + "Set of activities assigned to workers does not match set of activities listed as dependants in activity dependencies" + ); + assert_eq!( + all_activities_workers, all_activities_dependencies, + "Set of activities assigned to workers does not include all activities mentioned in activity dependencies" + ); } /// Configuration of the benchmark application diff --git a/examples/rust/mini-adas/Cargo.toml b/examples/rust/mini-adas/Cargo.toml index 2bd450c..ca69e8c 100644 --- a/examples/rust/mini-adas/Cargo.toml +++ b/examples/rust/mini-adas/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "mini-adas" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] path = "src/bin/adas_deserializer.rs" diff --git a/examples/rust/mini-adas/src/activities/components.rs b/examples/rust/mini-adas/src/activities/components.rs index 34ea6c9..8435b5b 100644 --- a/examples/rust/mini-adas/src/activities/components.rs +++ b/examples/rust/mini-adas/src/activities/components.rs @@ -396,13 +396,13 @@ impl Activity for BrakeController { debug!("Stepping BrakeController"); sleep_random(); - if let Ok(brake_instruction) = self.input_brake_instruction.read() { - if brake_instruction.active { - debug!( - "BrakeController activating brakes with level {:.3}", - brake_instruction.level - ) - } + if let Ok(brake_instruction) = self.input_brake_instruction.read() + && brake_instruction.active + { + debug!( + "BrakeController activating brakes with level {:.3}", + brake_instruction.level + ) } Ok(()) } diff --git a/examples/rust/mini-adas/src/bin/adas_primary.rs b/examples/rust/mini-adas/src/bin/adas_primary.rs index 3d59760..dbb2ac0 100644 --- a/examples/rust/mini-adas/src/bin/adas_primary.rs +++ b/examples/rust/mini-adas/src/bin/adas_primary.rs @@ -13,10 +13,10 @@ use feo::agent::com_init::initialize_com_primary; use feo::ids::AgentId; -use feo_log::{info, LevelFilter}; +use feo_log::{LevelFilter, info}; use feo_time::Duration; use mini_adas::config::{ - agent_assignments_ids, topic_dependencies, COM_BACKEND, MAX_ADDITIONAL_SUBSCRIBERS, + COM_BACKEND, MAX_ADDITIONAL_SUBSCRIBERS, agent_assignments_ids, topic_dependencies, }; use std::collections::HashSet; @@ -92,7 +92,7 @@ impl Params { #[cfg(feature = "signalling_direct_mpsc")] mod cfg { - use super::{Duration, Params, AGENT_ID}; + use super::{AGENT_ID, Duration, Params}; use mini_adas::config::{activity_dependencies, agent_assignments}; pub(super) use feo::agent::direct::primary_mpsc::{Primary, PrimaryConfig}; @@ -113,13 +113,13 @@ mod cfg { #[cfg(feature = "signalling_direct_tcp")] mod cfg { - use super::{check_ids, Duration, Params, AGENT_ID}; + use super::{AGENT_ID, Duration, Params, check_ids}; use feo::{ agent::NodeAddress, ids::{ActivityId, AgentId, WorkerId}, }; use mini_adas::config::{ - activity_dependencies, agent_assignments, worker_agent_map, BIND_ADDR, + BIND_ADDR, activity_dependencies, agent_assignments, worker_agent_map, }; use std::collections::{HashMap, HashSet}; @@ -160,7 +160,7 @@ mod cfg { #[cfg(feature = "signalling_direct_unix")] mod cfg { - use super::{check_ids, Duration, Params, AGENT_ID}; + use super::{AGENT_ID, Duration, Params, check_ids}; use feo::{ agent::NodeAddress, ids::{ActivityId, AgentId, WorkerId}, @@ -207,11 +207,11 @@ mod cfg { #[cfg(feature = "signalling_relayed_tcp")] mod cfg { - use super::{check_ids, Duration, Params, AGENT_ID}; + use super::{AGENT_ID, Duration, Params, check_ids}; use feo::agent::NodeAddress; use feo::ids::{ActivityId, AgentId, WorkerId}; use mini_adas::config::{ - activity_dependencies, agent_assignments, worker_agent_map, BIND_ADDR, BIND_ADDR2, + BIND_ADDR, BIND_ADDR2, activity_dependencies, agent_assignments, worker_agent_map, }; use std::collections::{HashMap, HashSet}; @@ -248,7 +248,7 @@ mod cfg { #[cfg(feature = "signalling_relayed_unix")] mod cfg { - use super::{check_ids, Duration, Params, AGENT_ID}; + use super::{AGENT_ID, Duration, Params, check_ids}; use feo::agent::NodeAddress; use feo::ids::{ActivityId, AgentId, WorkerId}; use mini_adas::config::{ diff --git a/examples/rust/mini-adas/src/bin/adas_recorder.rs b/examples/rust/mini-adas/src/bin/adas_recorder.rs index 6b852f1..7ef1833 100644 --- a/examples/rust/mini-adas/src/bin/adas_recorder.rs +++ b/examples/rust/mini-adas/src/bin/adas_recorder.rs @@ -13,7 +13,7 @@ use feo::ids::AgentId; use feo::recording::recorder::RecordingRules; -use feo_log::{debug, LevelFilter}; +use feo_log::{LevelFilter, debug}; use mini_adas::activities::messages::{ self, BrakeInstruction, CameraImage, RadarScan, Scene, Steering, }; @@ -21,8 +21,8 @@ use mini_adas::activities::messages::{ use feo::agent::com_init::initialize_com_recorder; use feo::topicspec::TopicSpecification; use mini_adas::config::{ - topic_dependencies, COM_BACKEND, TOPIC_CAMERA_FRONT, TOPIC_CONTROL_BRAKES, - TOPIC_CONTROL_STEERING, TOPIC_INFERRED_SCENE, TOPIC_RADAR_FRONT, + COM_BACKEND, TOPIC_CAMERA_FRONT, TOPIC_CONTROL_BRAKES, TOPIC_CONTROL_STEERING, + TOPIC_INFERRED_SCENE, TOPIC_RADAR_FRONT, topic_dependencies, }; use std::collections::HashMap; @@ -97,7 +97,7 @@ mod cfg { agent_id: AgentId, rules: RecordingRules, registry: &TypeRegistry, - ) -> RecorderConfig { + ) -> RecorderConfig<'_> { RecorderConfig { id: agent_id, record_file: "./rec.bin", diff --git a/examples/rust/mini-adas/src/bin/adas_secondary.rs b/examples/rust/mini-adas/src/bin/adas_secondary.rs index 01775c6..7de6364 100644 --- a/examples/rust/mini-adas/src/bin/adas_secondary.rs +++ b/examples/rust/mini-adas/src/bin/adas_secondary.rs @@ -14,17 +14,17 @@ #[cfg(any(feature = "signalling_direct_tcp", feature = "signalling_direct_unix"))] fn main() { use core::time::Duration; + use feo::agent::NodeAddress; use feo::agent::com_init::initialize_com_secondary; use feo::agent::direct::secondary::{Secondary, SecondaryConfig}; - use feo::agent::NodeAddress; use feo::ids::ActivityId; - use feo_log::{info, LevelFilter}; - #[cfg(feature = "signalling_direct_unix")] - use mini_adas::config::socket_paths; + use feo_log::{LevelFilter, info}; #[cfg(feature = "signalling_direct_tcp")] use mini_adas::config::BIND_ADDR; + #[cfg(feature = "signalling_direct_unix")] + use mini_adas::config::socket_paths; + use mini_adas::config::{COM_BACKEND, agent_assignments_ids}; use mini_adas::config::{agent_assignments, topic_dependencies}; - use mini_adas::config::{agent_assignments_ids, COM_BACKEND}; use params::Params; use std::collections::HashSet; @@ -64,14 +64,14 @@ fn main() { #[cfg(feature = "signalling_relayed_tcp")] fn main() { use core::time::Duration; + use feo::agent::NodeAddress; use feo::agent::com_init::initialize_com_secondary; use feo::agent::relayed::secondary::{Secondary, SecondaryConfig}; - use feo::agent::NodeAddress; use feo::ids::ActivityId; - use feo_log::{info, LevelFilter}; - use mini_adas::config::{agent_assignments, topic_dependencies}; - use mini_adas::config::{agent_assignments_ids, COM_BACKEND}; + use feo_log::{LevelFilter, info}; use mini_adas::config::{BIND_ADDR, BIND_ADDR2}; + use mini_adas::config::{COM_BACKEND, agent_assignments_ids}; + use mini_adas::config::{agent_assignments, topic_dependencies}; use params::Params; use std::collections::HashSet; @@ -109,14 +109,14 @@ fn main() { #[cfg(feature = "signalling_relayed_unix")] fn main() { use core::time::Duration; + use feo::agent::NodeAddress; use feo::agent::com_init::initialize_com_secondary; use feo::agent::relayed::secondary::{Secondary, SecondaryConfig}; - use feo::agent::NodeAddress; use feo::ids::ActivityId; - use feo_log::{info, LevelFilter}; + use feo_log::{LevelFilter, info}; use mini_adas::config::socket_paths; + use mini_adas::config::{COM_BACKEND, agent_assignments_ids}; use mini_adas::config::{agent_assignments, topic_dependencies}; - use mini_adas::config::{agent_assignments_ids, COM_BACKEND}; use params::Params; use std::collections::HashSet; diff --git a/feo-com/Cargo.toml b/feo-com/Cargo.toml index 3541459..e9b3bce 100644 --- a/feo-com/Cargo.toml +++ b/feo-com/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-com" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] feo-log = { workspace = true } diff --git a/feo-com/src/linux_shm/mod.rs b/feo-com/src/linux_shm/mod.rs index d51568f..505eb62 100644 --- a/feo-com/src/linux_shm/mod.rs +++ b/feo-com/src/linux_shm/mod.rs @@ -48,17 +48,17 @@ use alloc::sync::Arc; use alloc::vec::Vec; use core::fmt::Debug; use core::marker::PhantomData; -use core::mem::{size_of, MaybeUninit}; +use core::mem::{MaybeUninit, size_of}; use core::ops::{Deref, DerefMut}; use core::slice::from_raw_parts; use core::sync::atomic::Ordering; use feo_log::{debug, error, info}; use nix::fcntl::OFlag; -use nix::sys::mman::{mmap, shm_open, MapFlags, ProtFlags}; +use nix::sys::mman::{MapFlags, ProtFlags, mmap, shm_open}; use nix::sys::stat::Mode; use nix::unistd; use std::collections::HashMap; -use std::io::{read_to_string, Write}; +use std::io::{Write, read_to_string}; use std::net::Shutdown; use std::os::fd::OwnedFd; use std::os::unix::net::{UnixListener, UnixStream}; diff --git a/feo-com/src/linux_shm/shared_memory.rs b/feo-com/src/linux_shm/shared_memory.rs index 2e55a96..562fae4 100644 --- a/feo-com/src/linux_shm/shared_memory.rs +++ b/feo-com/src/linux_shm/shared_memory.rs @@ -17,7 +17,7 @@ use core::fmt::Debug; use core::marker::PhantomData; use core::ops::{Deref, DerefMut}; use core::ptr; -use core::sync::atomic::{fence, AtomicBool, AtomicPtr, AtomicU16, Ordering}; +use core::sync::atomic::{AtomicBool, AtomicPtr, AtomicU16, Ordering, fence}; // Mode of shared memory mapping #[derive(Debug, Clone, Copy)] diff --git a/feo-cpp-build/Cargo.toml b/feo-cpp-build/Cargo.toml index dbd36e2..5d72aa7 100644 --- a/feo-cpp-build/Cargo.toml +++ b/feo-cpp-build/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-cpp-build" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] cc = { workspace = true } diff --git a/feo-cpp-macros/Cargo.toml b/feo-cpp-macros/Cargo.toml index d638292..6663c65 100644 --- a/feo-cpp-macros/Cargo.toml +++ b/feo-cpp-macros/Cargo.toml @@ -1,9 +1,9 @@ [package] name = "feo-cpp-macros" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] [lib] -proc-macro = true \ No newline at end of file +proc-macro = true diff --git a/feo-log/Cargo.toml b/feo-log/Cargo.toml index 1ac561a..fed0460 100644 --- a/feo-log/Cargo.toml +++ b/feo-log/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-log" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] # The `std` feature is currently required for the `set_boxed_logger` call. diff --git a/feo-log/examples/hello.rs b/feo-log/examples/hello.rs index 28037f9..8443b32 100644 --- a/feo-log/examples/hello.rs +++ b/feo-log/examples/hello.rs @@ -12,7 +12,7 @@ ********************************************************************************/ use core::time; -use feo_log::{error, log, warn, Level, LevelFilter}; +use feo_log::{Level, LevelFilter, error, log, warn}; use std::thread; fn main() { diff --git a/feo-log/src/ffi.rs b/feo-log/src/ffi.rs index e0ef69b..356164f 100644 --- a/feo-log/src/ffi.rs +++ b/feo-log/src/ffi.rs @@ -12,7 +12,7 @@ ********************************************************************************/ use log::{Level, LevelFilter, Record}; -use std::ffi::{c_char, c_int, CStr}; +use std::ffi::{CStr, c_char, c_int}; #[allow(non_camel_case_types)] type feo_log_Level = ::std::os::raw::c_int; @@ -33,7 +33,7 @@ const LEVEL_FILTER_INFO: feo_log_Level = 3; const LEVEL_FILTER_DEBUG: feo_log_Level = 4; const LEVEL_FILTER_TRACE: feo_log_Level = 5; -#[no_mangle] +#[unsafe(no_mangle)] extern "C" fn __log( file: *const c_char, line: c_int, @@ -85,7 +85,7 @@ extern "C" fn __log( } /// Set the maximum log level -#[no_mangle] +#[unsafe(no_mangle)] extern "C" fn __set_max_level(level_filter: feo_log_Level_Filter) { let level_filter = match level_filter { LEVEL_FILTER_OFF => LevelFilter::Off, @@ -99,7 +99,7 @@ extern "C" fn __set_max_level(level_filter: feo_log_Level_Filter) { log::set_max_level(level_filter); } -#[no_mangle] +#[unsafe(no_mangle)] extern "C" fn __max_level() -> feo_log_Level_Filter { match log::max_level() { LevelFilter::Off => LEVEL_FILTER_OFF, diff --git a/feo-logger/Cargo.toml b/feo-logger/Cargo.toml index fe30894..8db07b8 100644 --- a/feo-logger/Cargo.toml +++ b/feo-logger/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-logger" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] console = { workspace = true } diff --git a/feo-logger/src/ffi.rs b/feo-logger/src/ffi.rs index 58b3f7a..6371554 100644 --- a/feo-logger/src/ffi.rs +++ b/feo-logger/src/ffi.rs @@ -13,7 +13,7 @@ use std::ffi::c_int; -#[no_mangle] +#[unsafe(no_mangle)] extern "C" fn __init(level_filter: c_int, console: bool, logd: bool) { let level_filter = match level_filter { 0 => feo_log::LevelFilter::Off, diff --git a/feo-logger/src/fmt.rs b/feo-logger/src/fmt.rs index 144912a..b69f34d 100644 --- a/feo-logger/src/fmt.rs +++ b/feo-logger/src/fmt.rs @@ -12,7 +12,7 @@ ********************************************************************************/ use crate::record::{OwnedRecord, Record}; -use console::{style, Color, StyledObject}; +use console::{Color, StyledObject, style}; use core::str; use core::sync::atomic::{self, AtomicUsize, Ordering}; use feo_log::Level; diff --git a/feo-logger/src/logd.rs b/feo-logger/src/logd.rs index a8e693f..56b4e62 100644 --- a/feo-logger/src/logd.rs +++ b/feo-logger/src/logd.rs @@ -11,10 +11,10 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ -use crate::record::Record; use crate::MAX_RECORD_SIZE; +use crate::record::Record; use core::mem; -use libc::{sockaddr_un, AF_UNIX}; +use libc::{AF_UNIX, sockaddr_un}; use std::io; use std::os::fd::{AsRawFd, FromRawFd, OwnedFd}; use std::sync::Mutex; diff --git a/feo-logger/src/record.rs b/feo-logger/src/record.rs index 279a1a7..4fe4f4f 100644 --- a/feo-logger/src/record.rs +++ b/feo-logger/src/record.rs @@ -238,7 +238,7 @@ fn read_u64_be(mut r: R) -> io::Result { #[cfg(test)] mod test { - use super::{read_u32_be, read_u64_be, Record}; + use super::{Record, read_u32_be, read_u64_be}; use crate::record::OwnedRecord; use std::io; diff --git a/feo-time/Cargo.toml b/feo-time/Cargo.toml index bc3a2de..50d3417 100644 --- a/feo-time/Cargo.toml +++ b/feo-time/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-time" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] time = { workspace = true } diff --git a/feo-time/examples/time_speedrun.rs b/feo-time/examples/time_speedrun.rs index 4395e94..a8b4af4 100644 --- a/feo-time/examples/time_speedrun.rs +++ b/feo-time/examples/time_speedrun.rs @@ -12,7 +12,7 @@ ********************************************************************************/ use core::time::Duration; -use feo_log::{debug, info, LevelFilter}; +use feo_log::{LevelFilter, debug, info}; use feo_time::Scaled; use std::thread; diff --git a/feo-time/src/ffi.rs b/feo-time/src/ffi.rs index 7ffd711..879a959 100644 --- a/feo-time/src/ffi.rs +++ b/feo-time/src/ffi.rs @@ -21,13 +21,13 @@ struct FeoTimeSpec { } /// Set the clock speed factor. -#[no_mangle] +#[unsafe(no_mangle)] extern "C" fn feo_clock_speed(factor: i32) { crate::speed(factor); } /// Get the current time. -#[no_mangle] +#[unsafe(no_mangle)] extern "C" fn feo_clock_gettime(ts: *mut FeoTimeSpec) { debug_assert!(!ts.is_null()); diff --git a/feo-tracer/Cargo.toml b/feo-tracer/Cargo.toml index d8b7b5c..7c5189c 100644 --- a/feo-tracer/Cargo.toml +++ b/feo-tracer/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-tracer" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] anyhow = { workspace = true } diff --git a/feo-tracer/src/main.rs b/feo-tracer/src/main.rs index d196541..4ab24b6 100644 --- a/feo-tracer/src/main.rs +++ b/feo-tracer/src/main.rs @@ -13,10 +13,10 @@ //! Collect trace data - placeholder -use anyhow::{bail, Context, Error}; +use anyhow::{Context, Error, bail}; use argh::FromArgs; use core::future::pending; -use feo_log::{debug, info, LevelFilter}; +use feo_log::{LevelFilter, debug, info}; use feo_tracer::io::listen; use feo_tracer::perfetto; use futures::FutureExt; diff --git a/feo-tracer/src/perfetto.rs b/feo-tracer/src/perfetto.rs index 4c0f99b..abf452c 100644 --- a/feo-tracer/src/perfetto.rs +++ b/feo-tracer/src/perfetto.rs @@ -12,7 +12,7 @@ ********************************************************************************/ use crate::data::{RecordData, RecordEventInfo, Thread, TraceRecord}; -use anyhow::{bail, Error}; +use anyhow::{Error, bail}; use feo_log::info; use perfetto_model as idl; use perfetto_model; diff --git a/feo-tracer/src/progress.rs b/feo-tracer/src/progress.rs index ef4592c..13e471f 100644 --- a/feo-tracer/src/progress.rs +++ b/feo-tracer/src/progress.rs @@ -66,7 +66,7 @@ impl Progress { } /// Add a writer to the progress bar - pub fn add_writer(&mut self, name: &str, writer: impl Write) -> impl Write { + pub fn add_writer(&mut self, name: &str, writer: T) -> impl Write + use { let pb = indicatif::ProgressBar::new(0) .with_prefix(name.to_string()) .with_style(self.main_style.clone()); diff --git a/feo-tracing/Cargo.toml b/feo-tracing/Cargo.toml index b247ff2..2f8404d 100644 --- a/feo-tracing/Cargo.toml +++ b/feo-tracing/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo-tracing" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] feo-log = { workspace = true } @@ -10,4 +10,3 @@ postcard = { workspace = true } serde = { workspace = true } tracing = { workspace = true } tracing-subscriber = { workspace = true } - diff --git a/feo-tracing/examples/hello_tracing.rs b/feo-tracing/examples/hello_tracing.rs index b6d16f6..841223d 100644 --- a/feo-tracing/examples/hello_tracing.rs +++ b/feo-tracing/examples/hello_tracing.rs @@ -14,7 +14,7 @@ use core::hash::{BuildHasher, Hasher}; use core::ops::Range; use core::time::Duration; -use feo_tracing::{instrument, span, Level}; +use feo_tracing::{Level, instrument, span}; use std::collections::hash_map::RandomState; use std::thread; use tracing::level_filters::LevelFilter; @@ -27,9 +27,11 @@ fn main() { // Spawn some threads that will generate traces (0..4).for_each(|n| { - drop(thread::spawn(move || loop { - iteration(n); - sleep_rand_millis(20..50); + drop(thread::spawn(move || { + loop { + iteration(n); + sleep_rand_millis(20..50); + } })) }); diff --git a/feo-tracing/src/lib.rs b/feo-tracing/src/lib.rs index 07fa635..66b0319 100644 --- a/feo-tracing/src/lib.rs +++ b/feo-tracing/src/lib.rs @@ -22,4 +22,4 @@ pub mod protocol; /// Initialize tracing pub use feo_subscriber::init; /// Re-export of the `tracing` crate. -pub use tracing::{self, event, instrument, level_filters::LevelFilter, span, Level}; +pub use tracing::{self, Level, event, instrument, level_filters::LevelFilter, span}; diff --git a/feo-tracing/src/subscriber.rs b/feo-tracing/src/subscriber.rs index fecc519..5d5d797 100644 --- a/feo-tracing/src/subscriber.rs +++ b/feo-tracing/src/subscriber.rs @@ -12,7 +12,7 @@ ********************************************************************************/ use crate::protocol::{ - truncate, EventInfo, TraceData, TracePacket, MAX_INFO_SIZE, MAX_PACKET_SIZE, + EventInfo, MAX_INFO_SIZE, MAX_PACKET_SIZE, TraceData, TracePacket, truncate, }; use core::sync::atomic; use core::sync::atomic::AtomicBool; @@ -20,7 +20,7 @@ use core::time::Duration; use feo_log::error; use std::io::Write; use std::os::unix::net::UnixStream; -use std::sync::{mpsc, Arc}; +use std::sync::{Arc, mpsc}; use std::thread::JoinHandle; use std::{io, thread}; use tracing::level_filters::LevelFilter; diff --git a/feo/Cargo.toml b/feo/Cargo.toml index c4869c1..87616d7 100644 --- a/feo/Cargo.toml +++ b/feo/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "feo" version = "0.0.1" -edition = "2021" +edition = "2024" [dependencies] feo-com = { workspace = true } diff --git a/feo/src/agent/com_init.rs b/feo/src/agent/com_init.rs index d05accd..bc7f54b 100644 --- a/feo/src/agent/com_init.rs +++ b/feo/src/agent/com_init.rs @@ -15,8 +15,8 @@ use crate::ids::{ActivityId, AgentId, WorkerId}; use crate::topicspec::{Direction, TopicSpecification}; use alloc::vec::Vec; use feo_com::interface::{ - run_backend, ComBackend, ComBackendTopicPrimaryInitialization, - ComBackendTopicSecondaryInitialization, TopicHandle, + ComBackend, ComBackendTopicPrimaryInitialization, ComBackendTopicSecondaryInitialization, + TopicHandle, run_backend, }; use std::collections::{HashMap, HashSet}; diff --git a/feo/src/agent/relayed/primary.rs b/feo/src/agent/relayed/primary.rs index 16f09c4..146746a 100644 --- a/feo/src/agent/relayed/primary.rs +++ b/feo/src/agent/relayed/primary.rs @@ -117,7 +117,9 @@ impl Primary { (connector as Box, builders) } _ => { - panic!("bind addresses must either be both TCP socket addresses or both Unix socket paths") + panic!( + "bind addresses must either be both TCP socket addresses or both Unix socket paths" + ) } }; diff --git a/feo/src/agent/relayed/recorder.rs b/feo/src/agent/relayed/recorder.rs index 54731c2..2d554a9 100644 --- a/feo/src/agent/relayed/recorder.rs +++ b/feo/src/agent/relayed/recorder.rs @@ -74,7 +74,9 @@ impl<'s> Recorder<'s> { } _ => { - panic!("bind addresses must either be both TCP socket addresses or both Unix socket paths") + panic!( + "bind addresses must either be both TCP socket addresses or both Unix socket paths" + ) } }; diff --git a/feo/src/agent/relayed/secondary.rs b/feo/src/agent/relayed/secondary.rs index 7d399cc..2582cd5 100644 --- a/feo/src/agent/relayed/secondary.rs +++ b/feo/src/agent/relayed/secondary.rs @@ -17,8 +17,8 @@ use crate::activity::ActivityIdAndBuilder; use crate::agent::NodeAddress; use crate::ids::{ActivityId, AgentId, WorkerId}; use crate::signalling::common::interface::ConnectWorker; -use crate::signalling::relayed::sockets_mpsc::{SecondaryConnectorTcp, SecondaryConnectorUnix}; use crate::signalling::relayed::ConnectSecondary; +use crate::signalling::relayed::sockets_mpsc::{SecondaryConnectorTcp, SecondaryConnectorUnix}; use crate::worker::Worker; use alloc::boxed::Box; use alloc::vec::Vec; @@ -93,7 +93,9 @@ impl Secondary { (Box::new(connector) as Box, builders) } _ => { - panic!("bind addresses must either be both TCP socket addresses or both Unix socket paths") + panic!( + "bind addresses must either be both TCP socket addresses or both Unix socket paths" + ) } }; diff --git a/feo/src/recording/recorder.rs b/feo/src/recording/recorder.rs index ad12699..376fb5e 100644 --- a/feo/src/recording/recorder.rs +++ b/feo/src/recording/recorder.rs @@ -19,7 +19,7 @@ use crate::recording::transcoder::ComRecTranscoder; use crate::signalling::common::interface::ConnectRecorder; use crate::signalling::common::signals::Signal; use crate::timestamp; -use crate::timestamp::{timestamp, Timestamp}; +use crate::timestamp::{Timestamp, timestamp}; use alloc::boxed::Box; use alloc::vec; use alloc::vec::Vec; @@ -282,6 +282,7 @@ pub struct DataDescriptionRecord<'s> { } impl MaxSize for DataDescriptionRecord<'_> { + #[allow(clippy::identity_op)] const POSTCARD_MAX_SIZE: usize = Timestamp::POSTCARD_MAX_SIZE + usize::POSTCARD_MAX_SIZE + // data_size 2*( // type_name, topic diff --git a/feo/src/scheduler.rs b/feo/src/scheduler.rs index 41570b3..f017026 100644 --- a/feo/src/scheduler.rs +++ b/feo/src/scheduler.rs @@ -382,10 +382,9 @@ impl Scheduler { } if let Ok(Some(Signal::TerminateAck(agent_id))) = self.connector.receive(self.receive_timeout) + && pending_agent_acks.remove(&agent_id) { - if pending_agent_acks.remove(&agent_id) { - info!("Received TerminateAck from agent {}", agent_id); - } + info!("Received TerminateAck from agent {}", agent_id); } } @@ -415,7 +414,7 @@ impl Scheduler { return Err(Error::Timeout( self.receive_timeout, "waiting for ready signal", - )) + )); } Some(signal @ Signal::Ready((id, _))) => { for recorder_id in self.recorder_ids.iter() { @@ -497,7 +496,9 @@ impl Scheduler { } } Some(other) => { - error!("Received unexpected signal {other} while waiting for recorder ready signal"); + error!( + "Received unexpected signal {other} while waiting for recorder ready signal" + ); } } } diff --git a/feo/src/signalling/common/mpsc/endpoint.rs b/feo/src/signalling/common/mpsc/endpoint.rs index e24f60b..fcf964c 100644 --- a/feo/src/signalling/common/mpsc/endpoint.rs +++ b/feo/src/signalling/common/mpsc/endpoint.rs @@ -15,7 +15,7 @@ use crate::error::Error; use crate::ids::ChannelId; -use crate::signalling::common::mpsc::primitives::{channel, Receiver, Sender}; +use crate::signalling::common::mpsc::primitives::{Receiver, Sender, channel}; use crate::signalling::common::signals::Signal; use core::time::Duration; use feo_log::{debug, error, trace}; diff --git a/feo/src/signalling/common/socket/connection.rs b/feo/src/signalling/common/socket/connection.rs index 89ac5b1..dfdc675 100644 --- a/feo/src/signalling/common/socket/connection.rs +++ b/feo/src/signalling/common/socket/connection.rs @@ -83,20 +83,20 @@ where { /// Try to read from this connection pub(crate) fn read(&mut self) -> io::Result> { - if self.buffer_readable { - if let Some(msg) = self.parse_from_buffer() { - return Ok(Some(msg)); - } + if self.buffer_readable + && let Some(msg) = self.parse_from_buffer() + { + return Ok(Some(msg)); } if self.stream_readable { self.read_from_stream()?; } - if self.buffer_readable { - if let Some(msg) = self.parse_from_buffer() { - return Ok(Some(msg)); - } + if self.buffer_readable + && let Some(msg) = self.parse_from_buffer() + { + return Ok(Some(msg)); } Ok(None) diff --git a/feo/src/signalling/common/socket/server.rs b/feo/src/signalling/common/socket/server.rs index ebadfdf..9a16509 100644 --- a/feo/src/signalling/common/socket/server.rs +++ b/feo/src/signalling/common/socket/server.rs @@ -18,7 +18,7 @@ use core::net::SocketAddr; use core::time::Duration; use feo_log::{debug, info, warn}; use mio::net::{TcpListener, TcpStream, UnixListener, UnixStream}; -use mio::{event, Events, Interest, Poll, Token}; +use mio::{Events, Interest, Poll, Token, event}; use std::collections::HashMap; use std::fs; use std::io; diff --git a/feo/src/signalling/direct/mpsc/scheduler.rs b/feo/src/signalling/direct/mpsc/scheduler.rs index c4a56d0..696a4e8 100644 --- a/feo/src/signalling/direct/mpsc/scheduler.rs +++ b/feo/src/signalling/direct/mpsc/scheduler.rs @@ -14,12 +14,12 @@ use crate::error::Error; use crate::ids::{ActivityId, AgentId, ChannelId, WorkerId}; use crate::signalling::common::interface::ConnectScheduler; +use crate::signalling::common::mpsc::WorkerConnectorBuilder; use crate::signalling::common::mpsc::endpoint::{ ProtocolMultiReceiver, ProtocolMultiSender, ProtocolReceiver, ProtocolSender, ProtocolSignal, }; use crate::signalling::common::mpsc::primitives::{Receiver, Sender}; use crate::signalling::common::mpsc::worker::WorkerConnector; -use crate::signalling::common::mpsc::WorkerConnectorBuilder; use crate::signalling::common::signals::Signal; use alloc::boxed::Box; use core::time::Duration; diff --git a/feo/src/signalling/direct/recorder.rs b/feo/src/signalling/direct/recorder.rs index 10c62f5..ee317fa 100644 --- a/feo/src/signalling/direct/recorder.rs +++ b/feo/src/signalling/direct/recorder.rs @@ -15,13 +15,13 @@ use crate::error::Error; use crate::ids::AgentId; use crate::signalling::common::interface::ConnectRecorder; use crate::signalling::common::signals::Signal; -use crate::signalling::common::socket::client::{SocketClient, TcpClient, UnixClient}; use crate::signalling::common::socket::ProtocolSignal; +use crate::signalling::common::socket::client::{SocketClient, TcpClient, UnixClient}; use core::net::SocketAddr; use core::time::Duration; use feo_log::warn; -use mio::net::{TcpStream, UnixStream}; use mio::Events; +use mio::net::{TcpStream, UnixStream}; use std::io; use std::path::PathBuf; diff --git a/feo/src/signalling/direct/scheduler.rs b/feo/src/signalling/direct/scheduler.rs index 11e5202..c2d519c 100644 --- a/feo/src/signalling/direct/scheduler.rs +++ b/feo/src/signalling/direct/scheduler.rs @@ -15,8 +15,8 @@ use crate::error::Error; use crate::ids::{ActivityId, AgentId}; use crate::signalling::common::interface::ConnectScheduler; use crate::signalling::common::signals::Signal; -use crate::signalling::common::socket::server::{Listen, SocketServer, TcpServer, UnixServer}; use crate::signalling::common::socket::ProtocolSignal; +use crate::signalling::common::socket::server::{Listen, SocketServer, TcpServer, UnixServer}; use crate::timestamp::sync_info; use alloc::vec::Vec; use core::net::SocketAddr; @@ -157,7 +157,9 @@ where missing_recorders.remove(&agent_id); } other => { - warn!("received unexpected signal {other:?} from connection with token {token:?}"); + warn!( + "received unexpected signal {other:?} from connection with token {token:?}" + ); } } } diff --git a/feo/src/signalling/direct/worker.rs b/feo/src/signalling/direct/worker.rs index e3b7bc7..d751e2e 100644 --- a/feo/src/signalling/direct/worker.rs +++ b/feo/src/signalling/direct/worker.rs @@ -15,13 +15,13 @@ use crate::error::Error; use crate::ids::ActivityId; use crate::signalling::common::interface::ConnectWorker; use crate::signalling::common::signals::Signal; -use crate::signalling::common::socket::client::{SocketClient, TcpClient, UnixClient}; use crate::signalling::common::socket::ProtocolSignal; +use crate::signalling::common::socket::client::{SocketClient, TcpClient, UnixClient}; use alloc::vec::Vec; use core::net::SocketAddr; use core::time::Duration; -use mio::net::{TcpStream, UnixStream}; use mio::Events; +use mio::net::{TcpStream, UnixStream}; use std::io; use std::path::PathBuf; diff --git a/feo/src/signalling/relayed/connectors/relays.rs b/feo/src/signalling/relayed/connectors/relays.rs index 875ee09..5129934 100644 --- a/feo/src/signalling/relayed/connectors/relays.rs +++ b/feo/src/signalling/relayed/connectors/relays.rs @@ -192,7 +192,9 @@ impl SecondaryReceiveRelay { } Err(Error::ChannelClosed) => Err(Error::ChannelClosed), Err(Error::Io((e, _))) if e.kind() == ErrorKind::ConnectionReset => { - debug!("SecondaryReceiveRelay detected connection to primary reset (expected during shutdown)"); + debug!( + "SecondaryReceiveRelay detected connection to primary reset (expected during shutdown)" + ); Err(Error::Io((e, "connection reset"))) } Err(e) => { @@ -258,11 +260,15 @@ impl SecondaryReceiveRelay { continue; } Err(Error::ChannelClosed) => { - debug!("[SecondaryReceiveRelay]Connection to primary lost. Initiating self-shutdown."); + debug!( + "[SecondaryReceiveRelay]Connection to primary lost. Initiating self-shutdown." + ); return; // Exit the relay thread. The workers will detect the closed channel. } Err(Error::Io((e, _))) if e.kind() == ErrorKind::ConnectionReset => { - debug!("[SecondaryReceiveRelay]Connection to primary was reset (expected during shutdown). Exiting."); + debug!( + "[SecondaryReceiveRelay]Connection to primary was reset (expected during shutdown). Exiting." + ); return; // Graceful exit } Err(e) => { @@ -290,7 +296,9 @@ impl SecondaryReceiveRelay { // This is a targeted signal for a specific activity. // Lookup corresponding worker id. let Some(worker_id) = activity_worker_map.get(&act_id) else { - error!("[SecondaryReceiveRelay]Received unexpected activity id {act_id:?} in {core_signal:?}"); + error!( + "[SecondaryReceiveRelay]Received unexpected activity id {act_id:?} in {core_signal:?}" + ); continue; }; @@ -316,7 +324,10 @@ impl SecondaryReceiveRelay { } } other => { - error!("[SecondaryReceiveRelay]Received unexpected signal '{:?}' from primary, discarding.", other); + error!( + "[SecondaryReceiveRelay]Received unexpected signal '{:?}' from primary, discarding.", + other + ); } } } diff --git a/feo/src/signalling/relayed/connectors/secondary.rs b/feo/src/signalling/relayed/connectors/secondary.rs index 276f707..a68f76c 100644 --- a/feo/src/signalling/relayed/connectors/secondary.rs +++ b/feo/src/signalling/relayed/connectors/secondary.rs @@ -11,9 +11,9 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ +use crate::signalling::relayed::ConnectSecondary; use crate::signalling::relayed::connectors::relays::{SecondaryReceiveRelay, SecondarySendRelay}; use crate::signalling::relayed::interface::IsChannel; -use crate::signalling::relayed::ConnectSecondary; use feo_log::debug; pub(crate) struct SecondaryConnector { diff --git a/feo/src/signalling/relayed/sockets/endpoint.rs b/feo/src/signalling/relayed/sockets/endpoint.rs index 294123f..e058402 100644 --- a/feo/src/signalling/relayed/sockets/endpoint.rs +++ b/feo/src/signalling/relayed/sockets/endpoint.rs @@ -186,7 +186,10 @@ impl ProtocolMultiEndpoint { debug!("Channel connected {channel_id:?}"); } other => { - warn!("Received unexpected signal {:?} from unknown token {:?} during connect", other, token); + warn!( + "Received unexpected signal {:?} from unknown token {:?} during connect", + other, token + ); } } } diff --git a/feo/src/topicspec.rs b/feo/src/topicspec.rs index e22b72e..5ecb3f4 100644 --- a/feo/src/topicspec.rs +++ b/feo/src/topicspec.rs @@ -18,8 +18,8 @@ use alloc::boxed::Box; use alloc::vec::Vec; use core::fmt; use feo_com::interface::{ - init_topic_primary, init_topic_secondary, ComBackendTopicPrimaryInitialization, - ComBackendTopicSecondaryInitialization, Topic, TopicHandle, + ComBackendTopicPrimaryInitialization, ComBackendTopicSecondaryInitialization, Topic, + TopicHandle, init_topic_primary, init_topic_secondary, }; #[derive(Debug, Default, Clone, Copy, Eq, PartialEq)] diff --git a/feo/src/worker/mod.rs b/feo/src/worker/mod.rs index f14a3fc..069c3b7 100644 --- a/feo/src/worker/mod.rs +++ b/feo/src/worker/mod.rs @@ -106,7 +106,10 @@ impl Worker { .connector .send_to_scheduler(&Signal::TerminateAck(self.agent_id)) { - debug!("Worker {} failed to send TerminateAck (this is often expected during shutdown): {:?}", self.id, e); + debug!( + "Worker {} failed to send TerminateAck (this is often expected during shutdown): {:?}", + self.id, e + ); } debug!("Worker {} sent termination ack. Exiting.", self.id); // Linger for a moment to ensure TerminateAck has time to be sent diff --git a/logd/Cargo.toml b/logd/Cargo.toml index 63fa932..bc766e9 100644 --- a/logd/Cargo.toml +++ b/logd/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "logd" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] anyhow = { workspace = true } diff --git a/logd/src/input.rs b/logd/src/input.rs index 89e04d9..e9653ed 100644 --- a/logd/src/input.rs +++ b/logd/src/input.rs @@ -11,7 +11,7 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ -use crate::{RecordSender, MAX_RECORD_SIZE, UNIX_PACKET_PATH, UNIX_STREAM_PATH}; +use crate::{MAX_RECORD_SIZE, RecordSender, UNIX_PACKET_PATH, UNIX_STREAM_PATH}; use anyhow::{Context, Error}; use async_stream::stream; use bytes::BytesMut; diff --git a/logd/src/lib.rs b/logd/src/lib.rs index 7a55ae0..70562e4 100644 --- a/logd/src/lib.rs +++ b/logd/src/lib.rs @@ -13,7 +13,7 @@ //! Central trace collector -use anyhow::{bail, Error}; +use anyhow::{Error, bail}; use feo_logger::fmt::format_owned; use feo_logger::record::OwnedRecord; use tokio::sync::mpsc; diff --git a/logd/src/main.rs b/logd/src/main.rs index a4b85ab..a039343 100644 --- a/logd/src/main.rs +++ b/logd/src/main.rs @@ -14,7 +14,7 @@ //! Placeholder logging daemon that collects logs from various sources. Minimal effort implementation. use anyhow::Error; -use feo_log::{info, LevelFilter}; +use feo_log::{LevelFilter, info}; use tokio::runtime; fn main() -> Result<(), Error> { diff --git a/perfetto-model/Cargo.toml b/perfetto-model/Cargo.toml index 662b3e5..2f92985 100644 --- a/perfetto-model/Cargo.toml +++ b/perfetto-model/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "perfetto-model" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] prost = { workspace = true } diff --git a/pre_commit.sh b/pre_commit.sh index 8d23c61..5be1b2f 100755 --- a/pre_commit.sh +++ b/pre_commit.sh @@ -18,11 +18,10 @@ set -e SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) buildifier -r $SCRIPT_DIR -bazelisk clean --expunge bazelisk mod tidy -bazelisk build //:format.check bazelisk build //:format.fix +bazelisk build //:format.check cargo fmt --all -bazel build --config=lint-rust //... +bazelisk build --config=lint-rust //... bazelisk build //... bazelisk test //... diff --git a/pre_commit_clean.sh b/pre_commit_clean.sh new file mode 100755 index 0000000..c1c7791 --- /dev/null +++ b/pre_commit_clean.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +# ******************************************************************************* +# Copyright (c) 2025 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Apache License Version 2.0 which is available at +# https://www.apache.org/licenses/LICENSE-2.0 +# +# SPDX-License-Identifier: Apache-2.0 +# ******************************************************************************* + +set -e + +bazelisk clean --expunge +./pre_commit.sh diff --git a/rustfmt.toml b/rustfmt.toml index 4e573d6..4c1e982 100644 --- a/rustfmt.toml +++ b/rustfmt.toml @@ -11,4 +11,4 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* -edition = "2021" +edition = "2024" diff --git a/tests/rust/feo_tests/BUILD b/tests/rust/feo_tests/BUILD index 3d99213..191fb1f 100644 --- a/tests/rust/feo_tests/BUILD +++ b/tests/rust/feo_tests/BUILD @@ -21,7 +21,7 @@ rust_test( "src/monitor.rs", ], data = ["//tests/rust/feo_tests/test_agent"], - edition = "2021", + edition = "2024", deps = [ "@score_crates//:clap", "@score_crates//:env_logger", diff --git a/tests/rust/feo_tests/Cargo.toml b/tests/rust/feo_tests/Cargo.toml index 666bbfa..451f519 100644 --- a/tests/rust/feo_tests/Cargo.toml +++ b/tests/rust/feo_tests/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "integration_test" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] clap = { workspace = true } diff --git a/tests/rust/feo_tests/test_agent/Cargo.toml b/tests/rust/feo_tests/test_agent/Cargo.toml index e55c8eb..0dee994 100644 --- a/tests/rust/feo_tests/test_agent/Cargo.toml +++ b/tests/rust/feo_tests/test_agent/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "test_agent" version = "0.1.0" -edition = "2021" +edition = "2024" [features] com_iox2 = [] diff --git a/tests/rust/feo_tests/test_agent/src/activities.rs b/tests/rust/feo_tests/test_agent/src/activities.rs index 3861425..26e9f01 100644 --- a/tests/rust/feo_tests/test_agent/src/activities.rs +++ b/tests/rust/feo_tests/test_agent/src/activities.rs @@ -52,7 +52,9 @@ impl Activity for Sender { } #[instrument(name = "Sender startup")] - fn startup(&mut self) {} + fn startup(&mut self) -> Result<(), ActivityError> { + Ok(()) + } #[instrument(name = "Sender")] fn step(&mut self) -> Result<(), ActivityError> { @@ -101,7 +103,9 @@ impl Activity for Receiver { } #[instrument(name = "Receiver startup")] - fn startup(&mut self) {} + fn startup(&mut self) -> Result<(), ActivityError> { + Ok(()) + } #[instrument(name = "Receiver")] fn step(&mut self) -> Result<(), ActivityError> { @@ -164,9 +168,10 @@ impl Activity for Monitor { } #[instrument(name = "Monitor startup")] - fn startup(&mut self) { + fn startup(&mut self) -> Result<(), ActivityError> { // Notify testing app of a startup call self.sender.send(MonitorNotification::Startup).unwrap(); + Ok(()) } #[instrument(name = "Monitor")] diff --git a/tests/rust/feo_tests/test_agent/src/primary.rs b/tests/rust/feo_tests/test_agent/src/primary.rs index 7267640..da20261 100644 --- a/tests/rust/feo_tests/test_agent/src/primary.rs +++ b/tests/rust/feo_tests/test_agent/src/primary.rs @@ -61,8 +61,8 @@ impl PrimaryLauncher for Signalling { Primary::new(config).unwrap().run().unwrap(); } Signalling::DirectTcp => { - use feo::agent::direct::primary::{Primary, PrimaryConfig}; use feo::agent::NodeAddress; + use feo::agent::direct::primary::{Primary, PrimaryConfig}; let config = PrimaryConfig { cycle_time: DEFAULT_FEO_CYCLE_TIME, @@ -83,8 +83,8 @@ impl PrimaryLauncher for Signalling { Primary::new(config).unwrap().run().unwrap(); } Signalling::DirectUnix => { - use feo::agent::direct::primary::{Primary, PrimaryConfig}; use feo::agent::NodeAddress; + use feo::agent::direct::primary::{Primary, PrimaryConfig}; let config = PrimaryConfig { cycle_time: DEFAULT_FEO_CYCLE_TIME, diff --git a/tests/rust/feo_tests/test_agent/src/scenario.rs b/tests/rust/feo_tests/test_agent/src/scenario.rs index 0346ba3..0ff4de6 100644 --- a/tests/rust/feo_tests/test_agent/src/scenario.rs +++ b/tests/rust/feo_tests/test_agent/src/scenario.rs @@ -11,9 +11,9 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ +use crate::Scenario; use crate::activities::{Monitor, Receiver, Sender}; use crate::config::TOPIC_COUNTER; -use crate::Scenario; use feo::activity::{ActivityBuilder, ActivityIdAndBuilder}; use feo::ids::{ActivityId, AgentId, WorkerId}; use feo::topicspec::{Direction, TopicSpecification}; diff --git a/tests/rust/feo_tests/test_agent/src/secondary.rs b/tests/rust/feo_tests/test_agent/src/secondary.rs index 465feaf..49532f4 100644 --- a/tests/rust/feo_tests/test_agent/src/secondary.rs +++ b/tests/rust/feo_tests/test_agent/src/secondary.rs @@ -16,14 +16,14 @@ use std::collections::HashSet; use std::path::PathBuf; use crate::config::{BIND_ADDR, BIND_ADDR2, COM_BACKEND, SOCKET_PATH, SOCKET_PATH2}; -use feo::agent::com_init::initialize_com_secondary; use feo::agent::NodeAddress; +use feo::agent::com_init::initialize_com_secondary; use feo::error::Error; use feo::ids::{ActivityId, AgentId}; use feo_log::info; use crate::scenario::ScenarioConfig as _; -use crate::{config::PRIMARY_AGENT_ID, Scenario, Signalling}; +use crate::{Scenario, Signalling, config::PRIMARY_AGENT_ID}; pub trait SecondaryLauncher { /// Launch secondary FEO agent