diff --git a/Cargo.toml b/Cargo.toml index 5dcd1e743..69ef1b8fa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -32,7 +32,7 @@ rand = "0.8" serde = { version="1.0.114", features=["derive", "rc"]} serde_json = "1.0.57" tempfile = { version = "3.4.0" } -thiserror = "1.0.33" +thiserror = "1.0.49" tokio = { version="1.8", default-features=false, features=["fs", "io-util", "macros", "rt", "rt-multi-thread", "sync", "time"] } tracing = { version = "0.1.29" } tracing-appender = "0.2.0" diff --git a/openraft/src/lib.rs b/openraft/src/lib.rs index 79a44964e..83b40d540 100644 --- a/openraft/src/lib.rs +++ b/openraft/src/lib.rs @@ -1,6 +1,5 @@ #![doc = include_str!("../README.md")] #![cfg_attr(feature = "bt", feature(error_generic_member_access))] -#![cfg_attr(feature = "bt", feature(provide_any))] #![cfg_attr(feature = "bench", feature(test))] // TODO: `clippy::result-large-err`: StorageError is 136 bytes, try to reduce the size. #![allow(clippy::bool_assert_comparison, clippy::type_complexity, clippy::result_large_err)] diff --git a/openraft/src/progress/mod.rs b/openraft/src/progress/mod.rs index e91b2e0bc..1234c6cf8 100644 --- a/openraft/src/progress/mod.rs +++ b/openraft/src/progress/mod.rs @@ -370,7 +370,7 @@ mod t { #[test] fn vec_progress_new() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let progress = VecProgress::::new(quorum_set, [6, 7].into_iter(), 0); + let progress = VecProgress::::new(quorum_set, [6, 7], 0); assert_eq!( vec![ @@ -393,7 +393,7 @@ mod t { #[test] fn vec_progress_get() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let mut progress = VecProgress::::new(quorum_set, [6, 7].into_iter(), 0); + let mut progress = VecProgress::::new(quorum_set, [6, 7], 0); let _ = progress.update(&6, 5); assert_eq!(&5, progress.get(&6)); @@ -414,7 +414,7 @@ mod t { #[test] fn vec_progress_iter() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let mut progress = VecProgress::::new(quorum_set, [6, 7].into_iter(), 0); + let mut progress = VecProgress::::new(quorum_set, [6, 7], 0); let _ = progress.update(&7, 7); let _ = progress.update(&3, 3); @@ -441,10 +441,10 @@ mod t { #[test] fn vec_progress_move_up() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let mut progress = VecProgress::::new(quorum_set, [6].into_iter(), 0); + let mut progress = VecProgress::::new(quorum_set, [6], 0); // initial: 0-0, 1-0, 2-0, 3-0, 4-0 - let cases = vec![ + let cases = [ ((1, 2), &[(1, 2), (0, 0), (2, 0), (3, 0), (4, 0), (6, 0)], 0), // ((2, 3), &[(2, 3), (1, 2), (0, 0), (3, 0), (4, 0), (6, 0)], 0), // ((1, 3), &[(2, 3), (1, 3), (0, 0), (3, 0), (4, 0), (6, 0)], 1), // no move @@ -473,7 +473,7 @@ mod t { #[test] fn vec_progress_update() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let mut progress = VecProgress::::new(quorum_set, [6].into_iter(), 0); + let mut progress = VecProgress::::new(quorum_set, [6], 0); // initial: 0,0,0,0,0 let cases = vec![ @@ -515,10 +515,10 @@ mod t { let pv = |p, user_data| ProgressEntry { progress: p, user_data }; let quorum_set: Vec = vec![0, 1, 2]; - let mut progress = VecProgress::::new(quorum_set, [3].into_iter(), pv(0, "foo")); + let mut progress = VecProgress::::new(quorum_set, [3], pv(0, "foo")); // initial: 0,0,0,0 - let cases = vec![ + let cases = [ (3, pv(9, "a"), Ok(&0)), // 0,0,0,9 // learner won't affect granted (1, pv(2, "b"), Ok(&0)), // 0,2,0,9 (2, pv(3, "c"), Ok(&2)), // 0,2,3,9 @@ -543,7 +543,7 @@ mod t { #[test] fn vec_progress_update_does_not_move_learner_elt() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let mut progress = VecProgress::::new(quorum_set, [6].into_iter(), 0); + let mut progress = VecProgress::::new(quorum_set, [6], 0); assert_eq!(Some(5), progress.index(&6)); @@ -563,7 +563,7 @@ mod t { // Initially, committed is 5 - let mut p012 = VecProgress::::new(qs012, [5].into_iter(), 0); + let mut p012 = VecProgress::::new(qs012, [5], 0); let _ = p012.update(&0, 5); let _ = p012.update(&1, 6); @@ -597,7 +597,7 @@ mod t { #[test] fn vec_progress_is_voter() -> anyhow::Result<()> { let quorum_set: Vec = vec![0, 1, 2, 3, 4]; - let progress = VecProgress::::new(quorum_set, [6, 7].into_iter(), 0); + let progress = VecProgress::::new(quorum_set, [6, 7], 0); assert_eq!(Some(true), progress.is_voter(&1)); assert_eq!(Some(true), progress.is_voter(&3)); diff --git a/rust-toolchain b/rust-toolchain index df18b6ae3..86cef4f63 100644 --- a/rust-toolchain +++ b/rust-toolchain @@ -1 +1 @@ -nightly-2023-06-01 +nightly-2023-10-17 diff --git a/tests/tests/snapshot_streaming/t10_api_install_snapshot.rs b/tests/tests/snapshot_streaming/t10_api_install_snapshot.rs index 6b00e189d..f018608b0 100644 --- a/tests/tests/snapshot_streaming/t10_api_install_snapshot.rs +++ b/tests/tests/snapshot_streaming/t10_api_install_snapshot.rs @@ -38,7 +38,7 @@ async fn snapshot_arguments() -> Result<()> { let n = router.remove_node(0).ok_or_else(|| anyhow::anyhow!("node not found"))?; let make_req = || InstallSnapshotRequest { - /// force it to be a follower + // force it to be a follower vote: Vote::new_committed(2, 1), meta: SnapshotMeta { snapshot_id: "ss1".into(),