Skip to content

Commit fea1a90

Browse files
committed
Merge pull request 'edition bump to 2024 ald clippy' (#244) from edition-bump-clippy-fixes into main
Reviewed-on: https://egit.irs.uni-stuttgart.de/rust/sat-rs/pulls/244
2 parents 490635d + abc145f commit fea1a90

36 files changed

+562
-515
lines changed

satrs-example/src/interface/udp.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ pub trait UdpTmHandler {
1515
fn send_tm_to_udp_client(&mut self, socket: &UdpSocket, recv_addr: &SocketAddr);
1616
}
1717

18+
#[allow(dead_code)]
1819
pub struct StaticUdpTmHandler {
1920
pub tm_rx: mpsc::Receiver<PacketInPool>,
2021
pub tm_store: SharedStaticMemoryPool,

satrs/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
88

99
# [unreleased]
1010

11+
- Bump `sat-rs` edition to 2024.
12+
1113
# [v0.3.0-alpha.2] 2025-07-22
1214

1315
`satrs-shared` update

satrs/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[package]
22
name = "satrs"
33
version = "0.3.0-alpha.2"
4-
edition = "2021"
5-
rust-version = "1.82.0"
4+
edition = "2024"
5+
rust-version = "1.85.0"
66
authors = ["Robin Mueller <muellerr@irs.uni-stuttgart.de>"]
77
description = "A library collection to build software for remote systems"
88
homepage = "https://github.com/us-irs/sat-rs"

satrs/src/dev_mgmt.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
use crate::{
2+
ComponentId,
23
mode::{ModeAndSubmode, ModeReply, ModeRequest, ModeRequestSender},
34
mode_tree::{ModeStoreProvider, ModeStoreVec},
45
queue::{GenericSendError, GenericTargetedMessagingError},
56
request::{GenericMessage, RequestId},
6-
ComponentId,
77
};
88
use core::fmt::Debug;
99

@@ -270,7 +270,7 @@ impl<UserHook: DevManagerUserHook> DevManagerCommandingHelper<UserHook> {
270270
#[cfg(test)]
271271
mod tests {
272272
use crate::{
273-
mode::{tests::ModeReqSenderMock, UNKNOWN_MODE},
273+
mode::{UNKNOWN_MODE, tests::ModeReqSenderMock},
274274
request::MessageMetadata,
275275
};
276276

satrs/src/encoding/ccsds.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use spacepackets::{CcsdsPacket, SpHeader};
22

3-
use crate::{tmtc::PacketSenderRaw, ComponentId};
3+
use crate::{ComponentId, tmtc::PacketSenderRaw};
44

55
#[derive(Debug, Copy, Clone, PartialEq, Eq)]
66
pub enum SpValidity {
@@ -90,13 +90,13 @@ pub fn parse_buffer_for_ccsds_space_packets<SendError>(
9090
#[cfg(test)]
9191
mod tests {
9292
use spacepackets::{
93-
ecss::tc::PusTcCreator, CcsdsPacket, PacketId, PacketSequenceCtrl, PacketType,
94-
SequenceFlags, SpHeader,
93+
CcsdsPacket, PacketId, PacketSequenceCtrl, PacketType, SequenceFlags, SpHeader,
94+
ecss::tc::PusTcCreator,
9595
};
9696

97-
use crate::{encoding::tests::TcCacher, ComponentId};
97+
use crate::{ComponentId, encoding::tests::TcCacher};
9898

99-
use super::{parse_buffer_for_ccsds_space_packets, SpValidity, SpacePacketValidator};
99+
use super::{SpValidity, SpacePacketValidator, parse_buffer_for_ccsds_space_packets};
100100

101101
const PARSER_ID: ComponentId = 0x05;
102102
const TEST_APID_0: u16 = 0x02;

satrs/src/encoding/cobs.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
use crate::{tmtc::PacketSenderRaw, ComponentId};
1+
use crate::{ComponentId, tmtc::PacketSenderRaw};
22
use cobs::{decode_in_place, encode, max_encoding_length};
33

44
/// This function encodes the given packet with COBS and also wraps the encoded packet with
@@ -104,8 +104,8 @@ pub(crate) mod tests {
104104
use cobs::encode;
105105

106106
use crate::{
107-
encoding::tests::{encode_simple_packet, TcCacher, INVERTED_PACKET, SIMPLE_PACKET},
108107
ComponentId,
108+
encoding::tests::{INVERTED_PACKET, SIMPLE_PACKET, TcCacher, encode_simple_packet},
109109
};
110110

111111
use super::parse_buffer_for_cobs_encoded_packets;

satrs/src/encoding/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ pub(crate) mod tests {
1111
use alloc::collections::VecDeque;
1212

1313
use crate::{
14-
tmtc::{PacketAsVec, PacketSenderRaw},
1514
ComponentId,
15+
tmtc::{PacketAsVec, PacketSenderRaw},
1616
};
1717

1818
use super::cobs::encode_packet_with_cobs;

satrs/src/event_man.rs

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ pub trait ListenerMapProvider {
136136
#[cfg(feature = "alloc")]
137137
fn get_listeners(&self) -> alloc::vec::Vec<ListenerKey>;
138138
fn contains_listener(&self, key: &ListenerKey) -> bool;
139-
fn get_listener_ids(&self, key: &ListenerKey) -> Option<Iter<ComponentId>>;
139+
fn get_listener_ids(&self, key: &ListenerKey) -> Option<Iter<'_, ComponentId>>;
140140
fn add_listener(&mut self, key: ListenerKey, listener_id: ComponentId) -> bool;
141141
fn remove_duplicates(&mut self, key: &ListenerKey);
142142
}
@@ -198,13 +198,13 @@ pub enum EventRoutingError {
198198
}
199199

200200
impl<
201-
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
202-
SenderMap: SenderMapProvider<EventSender, Event, ParamProvider>,
203-
ListenerMap: ListenerMapProvider,
204-
EventSender: EventSendProvider<Event, ParamProvider>,
205-
Event: GenericEvent + Copy,
206-
ParamProvider: Debug,
207-
> EventManager<EventReceiver, SenderMap, ListenerMap, EventSender, Event, ParamProvider>
201+
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
202+
SenderMap: SenderMapProvider<EventSender, Event, ParamProvider>,
203+
ListenerMap: ListenerMapProvider,
204+
EventSender: EventSendProvider<Event, ParamProvider>,
205+
Event: GenericEvent + Copy,
206+
ParamProvider: Debug,
207+
> EventManager<EventReceiver, SenderMap, ListenerMap, EventSender, Event, ParamProvider>
208208
{
209209
pub fn remove_duplicates(&mut self, key: &ListenerKey) {
210210
self.listener_map.remove_duplicates(key)
@@ -229,13 +229,13 @@ impl<
229229
}
230230
}
231231
impl<
232-
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
233-
SenderMap: SenderMapProvider<EventSenderMap, Event, ParamProvider>,
234-
ListenerMap: ListenerMapProvider,
235-
EventSenderMap: EventSendProvider<Event, ParamProvider>,
236-
Event: GenericEvent + Copy,
237-
ParamProvider: Debug,
238-
> EventManager<EventReceiver, SenderMap, ListenerMap, EventSenderMap, Event, ParamProvider>
232+
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
233+
SenderMap: SenderMapProvider<EventSenderMap, Event, ParamProvider>,
234+
ListenerMap: ListenerMapProvider,
235+
EventSenderMap: EventSendProvider<Event, ParamProvider>,
236+
Event: GenericEvent + Copy,
237+
ParamProvider: Debug,
238+
> EventManager<EventReceiver, SenderMap, ListenerMap, EventSenderMap, Event, ParamProvider>
239239
{
240240
pub fn new_with_custom_maps(
241241
event_receiver: EventReceiver,
@@ -267,13 +267,13 @@ impl<
267267
}
268268

269269
impl<
270-
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
271-
SenderMap: SenderMapProvider<EventSenderMap, Event, ParamProvider>,
272-
ListenerMap: ListenerMapProvider,
273-
EventSenderMap: EventSendProvider<Event, ParamProvider, Error = GenericSendError>,
274-
Event: GenericEvent + Copy,
275-
ParamProvider: Clone + Debug,
276-
> EventManager<EventReceiver, SenderMap, ListenerMap, EventSenderMap, Event, ParamProvider>
270+
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
271+
SenderMap: SenderMapProvider<EventSenderMap, Event, ParamProvider>,
272+
ListenerMap: ListenerMapProvider,
273+
EventSenderMap: EventSendProvider<Event, ParamProvider, Error = GenericSendError>,
274+
Event: GenericEvent + Copy,
275+
ParamProvider: Clone + Debug,
276+
> EventManager<EventReceiver, SenderMap, ListenerMap, EventSenderMap, Event, ParamProvider>
277277
{
278278
/// This function will use the cached event receiver and try to receive one event.
279279
/// If an event was received, it will try to route that event to all subscribed event listeners.
@@ -355,11 +355,11 @@ pub mod alloc_mod {
355355
>;
356356

357357
impl<
358-
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
359-
EventSender: EventSendProvider<Event, ParamProvider>,
360-
Event: GenericEvent + Copy,
361-
ParamProvider: 'static + Debug,
362-
>
358+
EventReceiver: EventReceiveProvider<Event, ParamProvider>,
359+
EventSender: EventSendProvider<Event, ParamProvider>,
360+
Event: GenericEvent + Copy,
361+
ParamProvider: 'static + Debug,
362+
>
363363
EventManager<
364364
EventReceiver,
365365
DefaultSenderMap<EventSender, Event, ParamProvider>,
@@ -402,7 +402,7 @@ pub mod alloc_mod {
402402
self.listeners.contains_key(key)
403403
}
404404

405-
fn get_listener_ids(&self, key: &ListenerKey) -> Option<Iter<ComponentId>> {
405+
fn get_listener_ids(&self, key: &ListenerKey) -> Option<Iter<'_, ComponentId>> {
406406
self.listeners.get(key).map(|vec| vec.iter())
407407
}
408408

@@ -437,10 +437,10 @@ pub mod alloc_mod {
437437
}
438438

439439
impl<
440-
EventSender: EventSendProvider<Event, ParamProvider>,
441-
Event: GenericEvent,
442-
ParamProvider: Debug,
443-
> Default for DefaultSenderMap<EventSender, Event, ParamProvider>
440+
EventSender: EventSendProvider<Event, ParamProvider>,
441+
Event: GenericEvent,
442+
ParamProvider: Debug,
443+
> Default for DefaultSenderMap<EventSender, Event, ParamProvider>
444444
{
445445
fn default() -> Self {
446446
Self {
@@ -451,10 +451,10 @@ pub mod alloc_mod {
451451
}
452452

453453
impl<
454-
EventSender: EventSendProvider<Event, ParamProvider>,
455-
Event: GenericEvent,
456-
ParamProvider: Debug,
457-
> SenderMapProvider<EventSender, Event, ParamProvider>
454+
EventSender: EventSendProvider<Event, ParamProvider>,
455+
Event: GenericEvent,
456+
ParamProvider: Debug,
457+
> SenderMapProvider<EventSender, Event, ParamProvider>
458458
for DefaultSenderMap<EventSender, Event, ParamProvider>
459459
{
460460
fn contains_send_event_provider(&self, id: &ComponentId) -> bool {

satrs/src/events.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ use core::fmt::Debug;
3131
use core::hash::Hash;
3232
use core::marker::PhantomData;
3333
use delegate::delegate;
34+
use spacepackets::ByteConversionError;
3435
use spacepackets::ecss::EcssEnumeration;
3536
use spacepackets::util::{ToBeBytes, UnsignedEnum};
36-
use spacepackets::ByteConversionError;
3737

3838
/// Using a type definition allows to change this to u64 in the future more easily
3939
pub type LargestEventRaw = u32;

satrs/src/executable.rs

Lines changed: 58 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -55,33 +55,35 @@ pub fn exec_sched_single<
5555
let mut cycle_count = 0;
5656
thread::Builder::new()
5757
.name(String::from(executable.task_name()))
58-
.spawn(move || loop {
59-
if let Some(ref mut terminator) = termination {
60-
match terminator.try_recv() {
61-
Ok(_) | Err(TryRecvError::Disconnected) => {
62-
return Ok(OpResult::Ok);
58+
.spawn(move || {
59+
loop {
60+
if let Some(ref mut terminator) = termination {
61+
match terminator.try_recv() {
62+
Ok(_) | Err(TryRecvError::Disconnected) => {
63+
return Ok(OpResult::Ok);
64+
}
65+
Err(TryRecvError::Empty) => (),
6366
}
64-
Err(TryRecvError::Empty) => (),
65-
}
66-
}
67-
match executable.exec_type() {
68-
ExecutionType::OneShot => {
69-
executable.periodic_op(op_code)?;
70-
return Ok(OpResult::Ok);
7167
}
72-
ExecutionType::Infinite => {
73-
executable.periodic_op(op_code)?;
74-
}
75-
ExecutionType::Cycles(cycles) => {
76-
executable.periodic_op(op_code)?;
77-
cycle_count += 1;
78-
if cycle_count == cycles {
68+
match executable.exec_type() {
69+
ExecutionType::OneShot => {
70+
executable.periodic_op(op_code)?;
7971
return Ok(OpResult::Ok);
8072
}
73+
ExecutionType::Infinite => {
74+
executable.periodic_op(op_code)?;
75+
}
76+
ExecutionType::Cycles(cycles) => {
77+
executable.periodic_op(op_code)?;
78+
cycle_count += 1;
79+
if cycle_count == cycles {
80+
return Ok(OpResult::Ok);
81+
}
82+
}
83+
}
84+
if let Some(freq) = task_freq {
85+
thread::sleep(freq);
8186
}
82-
}
83-
if let Some(freq) = task_freq {
84-
thread::sleep(freq);
8587
}
8688
})
8789
}
@@ -110,51 +112,53 @@ pub fn exec_sched_multi<
110112

111113
thread::Builder::new()
112114
.name(String::from(task_name))
113-
.spawn(move || loop {
114-
if let Some(ref mut terminator) = termination {
115-
match terminator.try_recv() {
116-
Ok(_) | Err(TryRecvError::Disconnected) => {
117-
removal_flags.iter_mut().for_each(|x| *x = true);
115+
.spawn(move || {
116+
loop {
117+
if let Some(ref mut terminator) = termination {
118+
match terminator.try_recv() {
119+
Ok(_) | Err(TryRecvError::Disconnected) => {
120+
removal_flags.iter_mut().for_each(|x| *x = true);
121+
}
122+
Err(TryRecvError::Empty) => (),
118123
}
119-
Err(TryRecvError::Empty) => (),
120124
}
121-
}
122-
for (idx, executable) in executable_vec.iter_mut().enumerate() {
123-
match executable.exec_type() {
124-
ExecutionType::OneShot => {
125-
executable.periodic_op(op_code)?;
126-
removal_flags[idx] = true;
127-
}
128-
ExecutionType::Infinite => {
129-
executable.periodic_op(op_code)?;
130-
}
131-
ExecutionType::Cycles(cycles) => {
132-
executable.periodic_op(op_code)?;
133-
cycle_counts[idx] += 1;
134-
if cycle_counts[idx] == cycles {
125+
for (idx, executable) in executable_vec.iter_mut().enumerate() {
126+
match executable.exec_type() {
127+
ExecutionType::OneShot => {
128+
executable.periodic_op(op_code)?;
135129
removal_flags[idx] = true;
136130
}
131+
ExecutionType::Infinite => {
132+
executable.periodic_op(op_code)?;
133+
}
134+
ExecutionType::Cycles(cycles) => {
135+
executable.periodic_op(op_code)?;
136+
cycle_counts[idx] += 1;
137+
if cycle_counts[idx] == cycles {
138+
removal_flags[idx] = true;
139+
}
140+
}
137141
}
138142
}
143+
let mut removal_iter = removal_flags.iter();
144+
executable_vec.retain(|_| !*removal_iter.next().unwrap());
145+
removal_iter = removal_flags.iter();
146+
cycle_counts.retain(|_| !*removal_iter.next().unwrap());
147+
removal_flags.retain(|&i| !i);
148+
if executable_vec.is_empty() {
149+
return Ok(OpResult::Ok);
150+
}
151+
let freq = task_freq.unwrap_or_else(|| panic!("No task frequency specified"));
152+
thread::sleep(freq);
139153
}
140-
let mut removal_iter = removal_flags.iter();
141-
executable_vec.retain(|_| !*removal_iter.next().unwrap());
142-
removal_iter = removal_flags.iter();
143-
cycle_counts.retain(|_| !*removal_iter.next().unwrap());
144-
removal_flags.retain(|&i| !i);
145-
if executable_vec.is_empty() {
146-
return Ok(OpResult::Ok);
147-
}
148-
let freq = task_freq.unwrap_or_else(|| panic!("No task frequency specified"));
149-
thread::sleep(freq);
150154
})
151155
}
152156

153157
#[cfg(test)]
154158
mod tests {
155159
use super::{
156-
exec_sched_multi, exec_sched_single, Executable, ExecutableWithType, ExecutionType,
157-
OpResult,
160+
Executable, ExecutableWithType, ExecutionType, OpResult, exec_sched_multi,
161+
exec_sched_single,
158162
};
159163
use bus::Bus;
160164
use std::boxed::Box;

0 commit comments

Comments
 (0)