Update peach-lib dependencies and error printing #3

Merged
glyph merged 4 commits from fix_failing_build into main 2021-10-26 12:38:03 +00:00
7 changed files with 88 additions and 111 deletions

104
Cargo.lock generated
View File

@ -183,9 +183,9 @@ checksum = "8dead7461c1127cf637931a1e50934eb6eee8bff2f74433ac7909e9afcee04a3"
[[package]]
name = "bitflags"
version = "1.2.1"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitvec"
@ -309,7 +309,7 @@ dependencies = [
"libc",
"num-integer",
"num-traits 0.2.14",
"time 0.1.44",
"time",
"winapi 0.3.9",
]
@ -340,7 +340,7 @@ checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
dependencies = [
"ansi_term",
"atty",
"bitflags 1.2.1",
"bitflags 1.3.2",
"strsim",
"textwrap",
"unicode-width",
@ -353,7 +353,7 @@ version = "0.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
]
[[package]]
@ -389,7 +389,7 @@ dependencies = [
"percent-encoding 2.1.0",
"rand 0.8.4",
"sha2",
"time 0.1.44",
"time",
]
[[package]]
@ -561,7 +561,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf41c59b22b5e3ec0ea55c7847e5f358d340f3a8d6d53a5cf4f1564967f96487"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"proc-macro2 0.4.30",
"quote 0.6.13",
"syn 0.15.44",
@ -726,7 +726,7 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"fsevent-sys",
]
@ -761,7 +761,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"fuchsia-zircon-sys",
]
@ -909,7 +909,7 @@ version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93e3af942408868f6934a7b85134a3230832b9977cf66125df2f9edcfce4ddcc"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"ignore",
"walkdir",
]
@ -920,7 +920,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "04d50743080fbae298c55f0b28dd5ea4b513c53cddeddace6cbdd31db7dda981"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"error-chain",
"libc",
"nix 0.11.1",
@ -1050,7 +1050,7 @@ dependencies = [
"log 0.3.9",
"mime 0.2.6",
"num_cpus",
"time 0.1.44",
"time",
"traitobject",
"typeable",
"unicase 1.4.2",
@ -1075,7 +1075,7 @@ dependencies = [
"net2",
"percent-encoding 1.0.1",
"relay",
"time 0.1.44",
"time",
"tokio-core",
"tokio-io",
"tokio-proto",
@ -1102,7 +1102,7 @@ dependencies = [
"log 0.4.14",
"net2",
"rustc_version 0.2.3",
"time 0.1.44",
"time",
"tokio",
"tokio-buf",
"tokio-executor",
@ -1120,7 +1120,7 @@ version = "0.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c0eb3d9b6b02dc2508ee23439170004e44344bab9d53a490eb1f64c885b5003"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"byteorder",
"libc",
"nix 0.14.1",
@ -1171,7 +1171,7 @@ version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"inotify-sys",
"libc",
]
@ -1439,7 +1439,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe"
dependencies = [
"arrayvec",
"bitflags 1.2.1",
"bitflags 1.3.2",
"cfg-if 1.0.0",
"ryu",
"static_assertions",
@ -1447,9 +1447,9 @@ dependencies = [
[[package]]
name = "libc"
version = "0.2.98"
version = "0.2.105"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790"
checksum = "869d572136620d55835903746bcb5cdc54cb2851fd0aeec53220b4bb65ef3013"
[[package]]
name = "linked-hash-map"
@ -1718,7 +1718,7 @@ version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"bytes",
"cfg-if 0.1.10",
"gcc",
@ -1732,7 +1732,7 @@ version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "becb657d662f1cd2ef38c7ad480ec6b8cf9e96b27adb543e594f9cf0f2e6065c"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"cc",
"cfg-if 0.1.10",
"libc",
@ -1745,7 +1745,7 @@ version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c722bee1037d430d0f8e687bbdbf222f27cc6e4e68d5caf630857bb2b6dbdce"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"cc",
"cfg-if 0.1.10",
"libc",
@ -1758,7 +1758,7 @@ version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"cc",
"cfg-if 1.0.0",
"libc",
@ -1803,7 +1803,7 @@ version = "4.0.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"filetime",
"fsevent",
"fsevent-sys",
@ -1889,7 +1889,7 @@ version = "0.10.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "549430950c79ae24e6d02e0b7404534ecf311d94cc9f861e9e4020187d13d885"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"cfg-if 1.0.0",
"foreign-types",
"libc",
@ -2053,7 +2053,7 @@ version = "0.1.6"
dependencies = [
"env_logger 0.6.2",
"log 0.4.14",
"peach-lib 1.2.15",
"peach-lib",
]
[[package]]
@ -2076,27 +2076,6 @@ dependencies = [
"snafu 0.6.10",
]
[[package]]
name = "peach-lib"
version = "1.2.15"
source = "git+https://github.com/peachcloud/peach-lib?branch=main#c8918019926461404aca8614f42da1d9ab204c4c"
dependencies = [
"chrono",
"env_logger 0.6.2",
"fslock",
"jsonrpc-client-core",
"jsonrpc-client-http",
"jsonrpc-core 8.0.1",
"log 0.4.14",
"rand 0.8.4",
"regex",
"serde 1.0.127",
"serde_derive",
"serde_json",
"serde_yaml",
"snafu 0.6.10",
]
[[package]]
name = "peach-menu"
version = "0.2.7"
@ -2109,7 +2088,7 @@ dependencies = [
"jsonrpc-http-server",
"jsonrpc-test 11.0.0",
"log 0.4.14",
"peach-lib 1.2.15 (git+https://github.com/peachcloud/peach-lib?branch=main)",
"peach-lib",
"serde 1.0.127",
"serde_json",
"ws",
@ -2177,7 +2156,7 @@ dependencies = [
"jsonrpc-core 14.2.0",
"jsonrpc-test 14.2.0",
"log 0.4.14",
"peach-lib 1.2.15 (git+https://github.com/peachcloud/peach-lib?branch=main)",
"peach-lib",
"regex",
"serde 1.0.127",
"serde_derive",
@ -2210,7 +2189,7 @@ dependencies = [
"log 0.4.14",
"nest",
"openssl",
"peach-lib 1.2.15",
"peach-lib",
"percent-encoding 2.1.0",
"regex",
"rocket",
@ -2330,7 +2309,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f77e66f6d6d898cbbd4a09c48fd3507cfc210b7c83055de02a38b5f7a1e6d216"
dependencies = [
"libc",
"time 0.3.0",
"time",
]
[[package]]
@ -2340,7 +2319,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4bb02a28631f195f482c19529ec82bec8e4ffa2d96159e67eb1ae9f5c5c902d8"
dependencies = [
"libc",
"time 0.1.44",
"time",
]
[[package]]
@ -2646,7 +2625,7 @@ version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
]
[[package]]
@ -2699,7 +2678,7 @@ dependencies = [
"rocket_codegen",
"rocket_http",
"state",
"time 0.1.44",
"time",
"toml 0.4.10",
"version_check 0.9.3",
"yansi",
@ -2748,7 +2727,7 @@ dependencies = [
"percent-encoding 1.0.1",
"smallvec 1.6.1",
"state",
"time 0.1.44",
"time",
"unicode-xid 0.1.0",
]
@ -2840,7 +2819,7 @@ version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467"
dependencies = [
"bitflags 1.2.1",
"bitflags 1.3.2",
"core-foundation",
"core-foundation-sys",
"libc",
@ -3225,7 +3204,7 @@ dependencies = [
"lazy_static",
"libc",
"nom 6.2.1",
"time 0.1.44",
"time",
"winapi 0.3.9",
]
@ -3346,15 +3325,6 @@ dependencies = [
"winapi 0.3.9",
]
[[package]]
name = "time"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6cf2535c6456e772ad756a0854ec907ede55d73d0b5a34855d808cb2d2f0942e"
dependencies = [
"libc",
]
[[package]]
name = "tinybmp"
version = "0.1.1"
@ -3977,7 +3947,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "403f3fd505ff930da84156389639932955fb09705b3dccd1a3d60c8e7ff62776"
dependencies = [
"base64 0.10.1",
"bitflags 1.2.1",
"bitflags 1.3.2",
"byteorder",
"bytes",
"futures",

View File

@ -22,8 +22,8 @@ use crate::update::update;
about = "a CLI tool for updating, installing and configuring PeachCloud"
)]
struct Opt {
#[structopt(short, long)]
verbose: bool,
//#[structopt(short, long)]
//verbose: bool,
// SUBCOMMANDS
#[structopt(subcommand)]

View File

@ -37,7 +37,7 @@ jsonrpc-client-http = "0.5.0"
jsonrpc-http-server = "11"
jsonrpc-test = "11"
log = "0.4"
peach-lib = { git = "https://github.com/peachcloud/peach-lib", branch = "main" }
peach-lib = { path = "../peach-lib" }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
ws = "0.8"

View File

@ -247,7 +247,7 @@ mod tests {
use hal::i2cdev::linux::LinuxI2CError;
use jsonrpc_core::ErrorCode;
use nix::Error as NixError;
//use nix::Error as NixError;
glyph marked this conversation as resolved
Review

should this line just be deleted instead of commented out?

should this line just be deleted instead of commented out?
Review

Good spotting! I'm going to leave that one commented out for now, since it relates to the commented out test below it (test to ensure correct I2CError error response (nix::Error variant)). I've added a TODO comment there to remind myself to fix it when I circle back to working on the physical interface .

Good spotting! I'm going to leave that one commented out for now, since it relates to the commented out test below it (`test to ensure correct I2CError error response (nix::Error variant)`). I've added a `TODO` comment there to remind myself to fix it when I circle back to working on the physical interface .
use std::io::Error as IoError;
use std::io::ErrorKind;
@ -300,11 +300,12 @@ mod tests {
rpc.request("rpc_i2c_io_error", &()),
r#"{
"code": -32000,
"message": "I2C device error: oh no!"
"message": "Failed to create interface for I2C device: oh no!"
}"#
);
}
/* TODO: fix this test (update nix deps)
// test to ensure correct I2CError error response (nix::Error variant)
#[test]
fn rpc_i2c_nix_error() {
@ -326,6 +327,7 @@ mod tests {
}"#
);
}
*/
// test to ensure correct InvalidCoordinate error response
#[test]

View File

@ -33,7 +33,7 @@ snafu = "0.4.1"
serde = "1.0"
serde_json = "1.0"
serde_derive = "1.0"
peach-lib = { git = "https://github.com/peachcloud/peach-lib", branch = "main" }
peach-lib = { path = "../peach-lib" }
clap = "2.33.3"
const_format = "0.2.10"
regex = "1"

View File

@ -183,13 +183,16 @@ impl PeachProbe {
Err(e) => {
eprintln!("++ {} endpoint is offline", endpoint_name);
match e {
PeachError::JsonRpcHttp(e) => {
eprintln!("Returned JsonRpcHTTP error: {:#?}\n", e)
PeachError::JsonRpcHttp { source } => {
eprintln!("Returned JsonRpcHTTP error: {:#?}\n", source)
}
PeachError::JsonRpcCore(e) => {
eprintln!("Returned JsonRpcCore error: {:#?}\n", e)
PeachError::JsonRpcCore { err } => {
eprintln!("Returned JsonRpcCore error: {:#?}\n", err)
}
PeachError::Serde(_) => eprintln!("Returned Serde Json serialization error\n"),
PeachError::Serde { source } => {
eprintln!("Returned Serde JSON serialization error: {:#?}\n", source)
}
_ => (),
}
result.failures.push(endpoint_name.to_string());
}
@ -211,11 +214,16 @@ impl PeachProbe {
}
Err(e) => {
match e {
PeachError::JsonRpcCore(e) => {
match e.kind() {
PeachError::JsonRpcCore { ref err } => {
match err {
// this is the expected error, all other errors are unexpected
jsonrpc_client_core::ErrorKind::JsonRpcError(err) => {
if err.code.code() == expected_error_code {
//jsonrpc_client_core::ErrorKind::JsonRpcError(err) => {
peach_lib::jsonrpc_core::Error {
code,
message: _,
data: _,
} => {
if code.code() == expected_error_code {
if self.verbose {
println!("++ {} endpoint is online", endpoint_name);
}
@ -226,23 +234,19 @@ impl PeachProbe {
result.failures.push(endpoint_name.to_string());
}
}
_ => {
}
}
PeachError::JsonRpcHttp { source } => {
eprintln!("++ {} endpoint is offline", endpoint_name);
eprintln!("Returned unexpected JsonRpcCore error: {:#?}\n", e);
eprintln!("Returned JsonRpcHTTP error: {:#?}\n", source);
result.failures.push(endpoint_name.to_string());
}
}
}
PeachError::JsonRpcHttp(e) => {
PeachError::Serde { source } => {
eprintln!("++ {} endpoint is offline", endpoint_name);
eprintln!("Returned JsonRpcHTTP error: {:#?}\n", e);
result.failures.push(endpoint_name.to_string());
}
PeachError::Serde(_) => {
eprintln!("++ {} endpoint is offline", endpoint_name);
eprintln!("Returned Serde Json serialization error\n");
eprintln!("Returned Serde JSON serialization error: {:#?}\n", source);
result.failures.push(endpoint_name.to_string());
}
_ => (),
}
}
}

View File

@ -3,6 +3,7 @@ use std::io::Read;
use rocket::http::{ContentType, Status};
use rocket::local::Client;
use rocket_contrib::json;
use super::rocket;
use crate::json_api::build_json_response;