chore: merge release-v0.7.2 into main

This commit is contained in:
Jack Wills
2024-09-07 21:38:07 +00:00
12 changed files with 30 additions and 34 deletions
+2 -12
View File
@@ -1,16 +1,6 @@
### 2024-09-07
### Chores
+ dependencies updated, [d6238587ffc536f1ea93a47dd4d2ee69c36f35e3], [a564ef80318adbde9f188dd2cf38626a98793c75], [1d82ff1368f7b43e6df8478d5e7b8d682320010a], [99f05f2e5b511d039804159c92ade6c77ff360b7]
+ Rust 1.81.0 linting, [372f759ca467e47c373a086c6a247c150b87d4bc]
+ .devcontainer updated, [5d77f1e02a428b4e5ee1bf5466055ad17f6e05af]
### Docs
+ CHANGELOG.md duplicate removed, [16ecc5a51f7defcc9dd4f4c6e34fa5bbfc7fea78]
+ Readme raspberry pi fix, [baf68783929e5d6ac111a39dc62388cd24133da6]
+ Add installation guide to README for macOS installation via `brew install oxker`, thanks [miketheman](https://github.com/miketheman), [59817311baea628d2691765ff9387e055dce3307], [895ec6204cc8220be64be7622df6edb6ef6d795b]
### Refactors
+ switch lints from `allow(x)` to `expect(x)`, [2a0ab6d81ce4062de053a92b85f8b25ea23412b6]
### Reverts
+ Expect lint was causing issues with crates/docker builds, revert until fix is found, [578ed9f085df0d97c451c06dab4ecbfccd894c52]
see <a href='https://github.com/mrjackwills/oxker/blob/main/CHANGELOG.md'>CHANGELOG.md</a> for more details
+6
View File
@@ -1,3 +1,9 @@
# <a href='https://github.com/mrjackwills/oxker/releases/tag/v0.7.2'>v0.7.2</a>
### 2024-09-07
### Reverts
+ Expect lint was causing issues with crates/docker builds, revert until fix is found, [578ed9f0](https://github.com/mrjackwills/oxker/commit/578ed9f085df0d97c451c06dab4ecbfccd894c52)
# <a href='https://github.com/mrjackwills/oxker/releases/tag/v0.7.1'>v0.7.1</a>
### 2024-09-07
Generated
+1 -1
View File
@@ -859,7 +859,7 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
[[package]]
name = "oxker"
version = "0.7.1"
version = "0.7.2"
dependencies = [
"anyhow",
"bollard",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "oxker"
version = "0.7.1"
version = "0.7.2"
edition = "2021"
authors = ["Jack Wills <email@mrjackwills.com>"]
description = "A simple tui to view & control docker containers"
+4 -4
View File
@@ -468,7 +468,7 @@ impl ByteStats {
}
}
#[expect(clippy::cast_precision_loss)]
#[allow(clippy::cast_precision_loss)]
impl Stats for ByteStats {
fn get_value(&self) -> f64 {
self.0 as f64
@@ -608,7 +608,7 @@ impl fmt::Display for ContainerItem {
}
impl ContainerItem {
#[expect(clippy::too_many_arguments)]
#[allow(clippy::too_many_arguments)]
/// Create a new container item
pub fn new(
created: u64,
@@ -660,7 +660,7 @@ impl ContainerItem {
}
/// Convert cpu stats into a vec for the charts function
#[expect(clippy::cast_precision_loss)]
#[allow(clippy::cast_precision_loss)]
fn get_cpu_dataset(&self) -> Vec<(f64, f64)> {
self.cpu_stats
.iter()
@@ -670,7 +670,7 @@ impl ContainerItem {
}
/// Convert mem stats into a Vec for the charts function
#[expect(clippy::cast_precision_loss)]
#[allow(clippy::cast_precision_loss)]
fn get_mem_dataset(&self) -> Vec<(f64, f64)> {
self.mem_stats
.iter()
+2 -2
View File
@@ -151,7 +151,7 @@ impl AppData {
}
/// Current time as unix timestamp
#[expect(clippy::expect_used)]
#[allow(clippy::expect_used)]
fn get_systemtime() -> u64 {
SystemTime::now()
.duration_since(UNIX_EPOCH)
@@ -933,7 +933,7 @@ impl AppData {
}
#[cfg(test)]
#[expect(clippy::unwrap_used)]
#[allow(clippy::unwrap_used)]
mod tests {
use super::*;
+1 -1
View File
@@ -2,7 +2,7 @@ use crate::app_data::DockerControls;
use std::fmt;
/// app errors to set in global state
#[expect(unused)]
#[allow(unused)]
#[derive(Debug, Clone, Copy)]
pub enum AppError {
DockerCommand(DockerControls),
+4 -4
View File
@@ -70,7 +70,7 @@ pub struct DockerData {
impl DockerData {
/// Use docker stats to calculate current cpu usage
#[expect(clippy::cast_precision_loss)]
#[allow(clippy::cast_precision_loss)]
// TODO FIX: this can overflow
fn calculate_usage(stats: &Stats) -> f64 {
let mut cpu_percentage = 0.0;
@@ -349,7 +349,7 @@ impl DockerData {
/// Handle incoming messages, container controls & all container information update
/// Spawn Docker commands off into own thread
#[expect(clippy::too_many_lines)]
#[allow(clippy::too_many_lines)]
async fn message_handler(&mut self) {
while let Some(message) = self.receiver.recv().await {
let docker = Arc::clone(&self.docker);
@@ -505,7 +505,7 @@ mod tests {
use super::*;
#[expect(clippy::too_many_lines)]
#[allow(clippy::too_many_lines)]
fn gen_stats(x: u64, y: u64) -> Stats {
Stats {
read: String::new(),
@@ -623,7 +623,7 @@ mod tests {
}
#[test]
#[expect(clippy::float_cmp)]
#[allow(clippy::float_cmp)]
/// Test the stats calculator, had to cheat here to get round input/outputs
fn test_calculate_usage_no_previous_cpu() {
let stats = gen_stats(1_000_000_000, 900_000_000);
+1 -1
View File
@@ -163,7 +163,7 @@ async fn main() {
}
#[cfg(test)]
#[expect(clippy::unwrap_used)]
#[allow(clippy::unwrap_used)]
mod tests {
use bollard::service::{ContainerSummary, Port};
+2 -2
View File
@@ -6,7 +6,7 @@ use tracing::error;
use crate::{ENV_KEY, ENV_VALUE};
#[derive(Parser, Debug, Clone)]
#[expect(clippy::struct_excessive_bools)]
#[allow(clippy::struct_excessive_bools)]
#[command(version, about)]
pub struct Args {
/// Docker update interval in ms, minimum effectively 1000
@@ -47,7 +47,7 @@ pub struct Args {
}
#[derive(Debug, Clone)]
#[expect(clippy::struct_excessive_bools)]
#[allow(clippy::struct_excessive_bools)]
pub struct CliArgs {
pub color: bool,
pub docker_interval: u32,
+5 -5
View File
@@ -364,7 +364,7 @@ pub fn chart(f: &mut Frame, area: Rect, app_data: &Arc<Mutex<AppData>>) {
.data(&mem.0)];
let cpu_stats = CpuStats::new(cpu.0.last().map_or(0.00, |f| f.1));
#[expect(clippy::cast_possible_truncation, clippy::cast_sign_loss)]
#[allow(clippy::cast_possible_truncation, clippy::cast_sign_loss)]
let mem_stats = ByteStats::new(mem.0.last().map_or(0, |f| f.1 as u64));
let cpu_chart = make_chart(cpu.2, "cpu", cpu_dataset, &cpu_stats, &cpu.1);
let mem_chart = make_chart(mem.2, "memory", mem_dataset, &mem_stats, &mem.1);
@@ -1065,7 +1065,7 @@ fn popup(text_lines: usize, text_width: usize, r: Rect, box_location: BoxLocatio
}
#[cfg(test)]
#[expect(clippy::unwrap_used)]
#[allow(clippy::unwrap_used)]
mod tests {
use std::{ops::RangeInclusive, sync::Arc};
@@ -2110,7 +2110,7 @@ mod tests {
// Charts panel //
// ************ //
#[expect(clippy::cast_precision_loss)]
#[allow(clippy::cast_precision_loss)]
// Add fixed data to the cpu & mem vecdeques
fn insert_chart_data(setup: &TuiTestSetup) {
for i in 1..=10 {
@@ -2834,7 +2834,7 @@ mod tests {
// ********** //
#[test]
#[expect(clippy::cognitive_complexity, clippy::too_many_lines)]
#[allow(clippy::cognitive_complexity, clippy::too_many_lines)]
/// Filter row is drawn correctly & colors are correct
/// Colours change when filter_by option is changed
fn test_draw_blocks_filter_row() {
@@ -3372,7 +3372,7 @@ mod tests {
}
#[test]
#[expect(clippy::too_many_lines)]
#[allow(clippy::too_many_lines)]
/// Check that the whole layout is drawn correctly
fn test_draw_blocks_whole_layout_with_filter() {
let (w, h) = (160, 30);
+1 -1
View File
@@ -58,7 +58,7 @@ pub enum DeleteButton {
No,
}
#[expect(unused)]
#[allow(unused)]
#[derive(Debug, Clone, Copy)]
pub enum BoxLocation {
TopLeft,