generated from PlexSheep/baserepo
Merge branch 'master' of https://git.cscherr.de/PlexSheep/pt
This commit is contained in:
commit
3e2ecf1189
|
@ -19,7 +19,7 @@ use libpt::ccc::*;
|
||||||
use libpt::log::*;
|
use libpt::log::*;
|
||||||
|
|
||||||
use clap::Parser;
|
use clap::Parser;
|
||||||
use clap_verbosity_flag::{Verbosity, InfoLevel};
|
use clap_verbosity_flag::{InfoLevel, Verbosity};
|
||||||
|
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
|
@ -64,7 +64,7 @@ pub struct Cli {
|
||||||
pub log_meta: bool,
|
pub log_meta: bool,
|
||||||
|
|
||||||
/// your exporession(s)
|
/// your exporession(s)
|
||||||
#[clap(trailing_var_arg=true)]
|
#[clap(trailing_var_arg = true)]
|
||||||
pub expression: Vec<String>,
|
pub expression: Vec<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -126,16 +126,5 @@ fn main() {
|
||||||
for part in cli.expression {
|
for part in cli.expression {
|
||||||
expr += ∂
|
expr += ∂
|
||||||
}
|
}
|
||||||
|
|
||||||
debug!("exporssion: {}", expr);
|
|
||||||
let r = Calculator::oneshot(expr);
|
|
||||||
match r {
|
|
||||||
Ok(r) => {
|
|
||||||
println!("{r}");
|
|
||||||
}
|
|
||||||
Err(err) => {
|
|
||||||
error!("Could not compute: {err}");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
|
@ -19,7 +19,7 @@ use clap::{Parser, Subcommand};
|
||||||
|
|
||||||
use clap_num::number_range;
|
use clap_num::number_range;
|
||||||
|
|
||||||
use clap_verbosity_flag::{Verbosity, InfoLevel};
|
use clap_verbosity_flag::{InfoLevel, Verbosity};
|
||||||
|
|
||||||
//// CONSTANTS /////////////////////////////////////////////////////////////////////////////////////
|
//// CONSTANTS /////////////////////////////////////////////////////////////////////////////////////
|
||||||
/// short about section displayed in help
|
/// short about section displayed in help
|
||||||
|
@ -103,13 +103,10 @@ pub enum NetCommands {
|
||||||
|
|
||||||
/// set a timeout (in ms)
|
/// set a timeout (in ms)
|
||||||
#[clap(short, long, default_value_t = 100)]
|
#[clap(short, long, default_value_t = 100)]
|
||||||
timeout: u64
|
timeout: u64,
|
||||||
|
|
||||||
},
|
},
|
||||||
/// discover hosts in your network
|
/// discover hosts in your network
|
||||||
Discover {
|
Discover {},
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
|
@ -13,7 +13,6 @@
|
||||||
// enable clippy's extra lints, the pedantic version
|
// enable clippy's extra lints, the pedantic version
|
||||||
#![warn(clippy::pedantic)]
|
#![warn(clippy::pedantic)]
|
||||||
|
|
||||||
|
|
||||||
//// IMPORTS ///////////////////////////////////////////////////////////////////////////////////////
|
//// IMPORTS ///////////////////////////////////////////////////////////////////////////////////////
|
||||||
use libpt::{log::*, net::monitoring::uptime};
|
use libpt::{log::*, net::monitoring::uptime};
|
||||||
|
|
||||||
|
@ -26,7 +25,6 @@ use std::path::PathBuf;
|
||||||
|
|
||||||
//// CONSTANTS /////////////////////////////////////////////////////////////////////////////////////
|
//// CONSTANTS /////////////////////////////////////////////////////////////////////////////////////
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
|
|
||||||
//// STATICS ///////////////////////////////////////////////////////////////////////////////////////
|
//// STATICS ///////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
//// MACROS ////////////////////////////////////////////////////////////////////////////////////////
|
//// MACROS ////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
|
@ -20,7 +20,8 @@ macro_rules! investigate_memory_layout {
|
||||||
let pointer = item as *const $t;
|
let pointer = item as *const $t;
|
||||||
let mut memory: [u8; std::mem::size_of::<$t>()] = std::mem::transmute(item.clone());
|
let mut memory: [u8; std::mem::size_of::<$t>()] = std::mem::transmute(item.clone());
|
||||||
memory.reverse();
|
memory.reverse();
|
||||||
println!("\
|
println!(
|
||||||
|
"\
|
||||||
\t{index:02x}\titem:\t\t{item:?}\n\
|
\t{index:02x}\titem:\t\t{item:?}\n\
|
||||||
\t\tpointer: \t{:X?}\n\
|
\t\tpointer: \t{:X?}\n\
|
||||||
\t\talign: \t{}\n\
|
\t\talign: \t{}\n\
|
||||||
|
|
|
@ -59,8 +59,7 @@ where
|
||||||
return format!("{:.2} Z", total.to_f64().unwrap() / ZEBI as f64);
|
return format!("{:.2} Z", total.to_f64().unwrap() / ZEBI as f64);
|
||||||
} else if YOBI <= total {
|
} else if YOBI <= total {
|
||||||
return format!("{:.2} Y", total.to_f64().unwrap() / YOBI as f64);
|
return format!("{:.2} Y", total.to_f64().unwrap() / YOBI as f64);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
unreachable!()
|
unreachable!()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use libpt_bintols::*;
|
|
||||||
use libpt_bintols::display::*;
|
use libpt_bintols::display::*;
|
||||||
|
use libpt_bintols::*;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn btobin() {
|
fn btobin() {
|
||||||
|
@ -10,11 +10,16 @@ fn btobin() {
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn big_btobin() {
|
fn big_btobin() {
|
||||||
let data = [12,31,82,32,123,32,92,23,12,32,12,1,1,1];
|
let data = [12, 31, 82, 32, 123, 32, 92, 23, 12, 32, 12, 1, 1, 1];
|
||||||
let r = bytes_to_bin(&data);
|
let r = bytes_to_bin(&data);
|
||||||
assert_eq!(r, format!("0b00001100_00011111_01010010_\
|
assert_eq!(
|
||||||
|
r,
|
||||||
|
format!(
|
||||||
|
"0b00001100_00011111_01010010_\
|
||||||
00100000_01111011_00100000_01011100_00010111_00001100\n\
|
00100000_01111011_00100000_01011100_00010111_00001100\n\
|
||||||
_00100000_00001100_00000001_00000001_00000001"));
|
_00100000_00001100_00000001_00000001_00000001"
|
||||||
|
)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
@ -29,35 +34,35 @@ fn hmnbytes() {
|
||||||
assert_eq!(humanbytes(0), format!("0 B"));
|
assert_eq!(humanbytes(0), format!("0 B"));
|
||||||
assert_eq!(humanbytes(1), format!("1 B"));
|
assert_eq!(humanbytes(1), format!("1 B"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(KIBI-1), format!("1023 B"));
|
assert_eq!(humanbytes(KIBI - 1), format!("1023 B"));
|
||||||
assert_eq!(humanbytes(KIBI), format!("1.00 K"));
|
assert_eq!(humanbytes(KIBI), format!("1.00 K"));
|
||||||
assert_eq!(humanbytes(KIBI+1), format!("1.00 K"));
|
assert_eq!(humanbytes(KIBI + 1), format!("1.00 K"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(MEBI-1), format!("1024.00 K"));
|
assert_eq!(humanbytes(MEBI - 1), format!("1024.00 K"));
|
||||||
assert_eq!(humanbytes(MEBI), format!("1.00 M"));
|
assert_eq!(humanbytes(MEBI), format!("1.00 M"));
|
||||||
assert_eq!(humanbytes(MEBI+1), format!("1.00 M"));
|
assert_eq!(humanbytes(MEBI + 1), format!("1.00 M"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(GIBI-1), format!("1024.00 M"));
|
assert_eq!(humanbytes(GIBI - 1), format!("1024.00 M"));
|
||||||
assert_eq!(humanbytes(GIBI), format!("1.00 G"));
|
assert_eq!(humanbytes(GIBI), format!("1.00 G"));
|
||||||
assert_eq!(humanbytes(GIBI+1), format!("1.00 G"));
|
assert_eq!(humanbytes(GIBI + 1), format!("1.00 G"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(TEBI-1), format!("1024.00 G"));
|
assert_eq!(humanbytes(TEBI - 1), format!("1024.00 G"));
|
||||||
assert_eq!(humanbytes(TEBI), format!("1.00 T"));
|
assert_eq!(humanbytes(TEBI), format!("1.00 T"));
|
||||||
assert_eq!(humanbytes(TEBI+1), format!("1.00 T"));
|
assert_eq!(humanbytes(TEBI + 1), format!("1.00 T"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(PEBI-1), format!("1024.00 T"));
|
assert_eq!(humanbytes(PEBI - 1), format!("1024.00 T"));
|
||||||
assert_eq!(humanbytes(PEBI), format!("1.00 P"));
|
assert_eq!(humanbytes(PEBI), format!("1.00 P"));
|
||||||
assert_eq!(humanbytes(PEBI+1), format!("1.00 P"));
|
assert_eq!(humanbytes(PEBI + 1), format!("1.00 P"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(EXBI-1), format!("1024.00 P"));
|
assert_eq!(humanbytes(EXBI - 1), format!("1024.00 P"));
|
||||||
assert_eq!(humanbytes(EXBI), format!("1.00 E"));
|
assert_eq!(humanbytes(EXBI), format!("1.00 E"));
|
||||||
assert_eq!(humanbytes(EXBI+1), format!("1.00 E"));
|
assert_eq!(humanbytes(EXBI + 1), format!("1.00 E"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(ZEBI-1), format!("1024.00 E"));
|
assert_eq!(humanbytes(ZEBI - 1), format!("1024.00 E"));
|
||||||
assert_eq!(humanbytes(ZEBI), format!("1.00 Z"));
|
assert_eq!(humanbytes(ZEBI), format!("1.00 Z"));
|
||||||
assert_eq!(humanbytes(ZEBI+1), format!("1.00 Z"));
|
assert_eq!(humanbytes(ZEBI + 1), format!("1.00 Z"));
|
||||||
|
|
||||||
assert_eq!(humanbytes(YOBI-1), format!("1024.00 Z"));
|
assert_eq!(humanbytes(YOBI - 1), format!("1024.00 Z"));
|
||||||
assert_eq!(humanbytes(YOBI), format!("1.00 Y"));
|
assert_eq!(humanbytes(YOBI), format!("1.00 Y"));
|
||||||
assert_eq!(humanbytes(YOBI+1), format!("1.00 Y"));
|
assert_eq!(humanbytes(YOBI + 1), format!("1.00 Y"));
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,11 +10,9 @@
|
||||||
// we want docs
|
// we want docs
|
||||||
#![warn(missing_docs)]
|
#![warn(missing_docs)]
|
||||||
#![warn(rustdoc::missing_crate_level_docs)]
|
#![warn(rustdoc::missing_crate_level_docs)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// we want Debug everywhere.
|
// we want Debug everywhere.
|
||||||
#![warn(missing_debug_implementations)]
|
#![warn(missing_debug_implementations)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// enable clippy's extra lints, the pedantic version
|
// enable clippy's extra lints, the pedantic version
|
||||||
#![warn(clippy::pedantic)]
|
#![warn(clippy::pedantic)]
|
||||||
|
|
|
@ -6,11 +6,9 @@
|
||||||
// we want docs
|
// we want docs
|
||||||
#![warn(missing_docs)]
|
#![warn(missing_docs)]
|
||||||
#![warn(rustdoc::missing_crate_level_docs)]
|
#![warn(rustdoc::missing_crate_level_docs)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// we want Debug everywhere.
|
// we want Debug everywhere.
|
||||||
#![warn(missing_debug_implementations)]
|
#![warn(missing_debug_implementations)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// enable clippy's extra lints, the pedantic version
|
// enable clippy's extra lints, the pedantic version
|
||||||
#![warn(clippy::pedantic)]
|
#![warn(clippy::pedantic)]
|
||||||
|
|
|
@ -90,4 +90,3 @@ impl std::fmt::Display for Error {
|
||||||
//// PUBLIC FUNCTIONS //////////////////////////////////////////////////////////////////////////////
|
//// PUBLIC FUNCTIONS //////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
//// PRIVATE FUNCTIONS /////////////////////////////////////////////////////////////////////////////
|
//// PRIVATE FUNCTIONS /////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ use error::*;
|
||||||
|
|
||||||
pub use tracing::{debug, error, info, trace, warn, Level};
|
pub use tracing::{debug, error, info, trace, warn, Level};
|
||||||
use tracing_appender;
|
use tracing_appender;
|
||||||
use tracing_subscriber::{prelude::*, fmt::format::FmtSpan};
|
use tracing_subscriber::{fmt::format::FmtSpan, prelude::*};
|
||||||
|
|
||||||
use pyo3::prelude::*;
|
use pyo3::prelude::*;
|
||||||
//// CONSTANTS /////////////////////////////////////////////////////////////////////////////////////
|
//// CONSTANTS /////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -254,4 +254,3 @@ impl fmt::Debug for Logger {
|
||||||
//// PUBLIC FUNCTIONS //////////////////////////////////////////////////////////////////////////////
|
//// PUBLIC FUNCTIONS //////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
//// PRIVATE FUNCTIONS /////////////////////////////////////////////////////////////////////////////
|
//// PRIVATE FUNCTIONS /////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
|
@ -10,11 +10,9 @@
|
||||||
// we want docs
|
// we want docs
|
||||||
#![warn(missing_docs)]
|
#![warn(missing_docs)]
|
||||||
#![warn(rustdoc::missing_crate_level_docs)]
|
#![warn(rustdoc::missing_crate_level_docs)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// we want Debug everywhere.
|
// we want Debug everywhere.
|
||||||
#![warn(missing_debug_implementations)]
|
#![warn(missing_debug_implementations)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// enable clippy's extra lints, the pedantic version
|
// enable clippy's extra lints, the pedantic version
|
||||||
#![warn(clippy::pedantic)]
|
#![warn(clippy::pedantic)]
|
||||||
|
|
|
@ -6,11 +6,9 @@
|
||||||
// we want docs
|
// we want docs
|
||||||
#![warn(missing_docs)]
|
#![warn(missing_docs)]
|
||||||
#![warn(rustdoc::missing_crate_level_docs)]
|
#![warn(rustdoc::missing_crate_level_docs)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// we want Debug everywhere.
|
// we want Debug everywhere.
|
||||||
#![warn(missing_debug_implementations)]
|
#![warn(missing_debug_implementations)]
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// enable clippy's extra lints, the pedantic version
|
// enable clippy's extra lints, the pedantic version
|
||||||
#![warn(clippy::pedantic)]
|
#![warn(clippy::pedantic)]
|
||||||
|
|
|
@ -188,7 +188,11 @@ pub fn continuous_uptime_monitor(
|
||||||
let mut last_was_up: bool = true;
|
let mut last_was_up: bool = true;
|
||||||
let mut last_ratio: u8 = status.success_ratio;
|
let mut last_ratio: u8 = status.success_ratio;
|
||||||
loop {
|
loop {
|
||||||
trace!(?status, ?last_was_up, "loop iteration for continuous uptime monitor");
|
trace!(
|
||||||
|
?status,
|
||||||
|
?last_was_up,
|
||||||
|
"loop iteration for continuous uptime monitor"
|
||||||
|
);
|
||||||
if !status.success {
|
if !status.success {
|
||||||
if last_was_up {
|
if last_was_up {
|
||||||
trace!("displaying status");
|
trace!("displaying status");
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
// FIXME: Using a local dependency does not work with maturin as it seems?
|
// FIXME: Using a local dependency does not work with maturin as it seems?
|
||||||
use libpt::{
|
use libpt::log::*;
|
||||||
log::*,
|
|
||||||
};
|
|
||||||
|
|
||||||
use pyo3::prelude::*;
|
use pyo3::prelude::*;
|
||||||
|
|
||||||
|
|
|
@ -6,10 +6,12 @@
|
||||||
//! `pt` is a project consisting of multiple smaller crates, all bundled together in this
|
//! `pt` is a project consisting of multiple smaller crates, all bundled together in this
|
||||||
//! "main crate". Most crates will only show up if you activate their feature.
|
//! "main crate". Most crates will only show up if you activate their feature.
|
||||||
|
|
||||||
#[cfg(feature = "core")]
|
|
||||||
pub use libpt_core as core;
|
|
||||||
#[cfg(feature = "bintols")]
|
#[cfg(feature = "bintols")]
|
||||||
pub use libpt_bintols as bintols;
|
pub use libpt_bintols as bintols;
|
||||||
|
#[cfg(feature = "ccc")]
|
||||||
|
pub use libpt_ccc as ccc;
|
||||||
|
#[cfg(feature = "core")]
|
||||||
|
pub use libpt_core as core;
|
||||||
#[cfg(feature = "hedu")]
|
#[cfg(feature = "hedu")]
|
||||||
pub use libpt_hedu as hedu;
|
pub use libpt_hedu as hedu;
|
||||||
#[cfg(feature = "log")]
|
#[cfg(feature = "log")]
|
||||||
|
@ -18,5 +20,3 @@ pub use libpt_log as log;
|
||||||
pub use libpt_math as math;
|
pub use libpt_math as math;
|
||||||
#[cfg(feature = "net")]
|
#[cfg(feature = "net")]
|
||||||
pub use libpt_net as net;
|
pub use libpt_net as net;
|
||||||
#[cfg(feature = "ccc")]
|
|
||||||
pub use libpt_ccc as ccc;
|
|
||||||
|
|
Reference in New Issue