diff --git a/README.md b/README.md
index dbd1bf0af6..0d062ac7ff 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
-
+
## Table of Contents
@@ -85,7 +85,7 @@ snarkvm
## 4. Contributors
-Thank you for helping make SnarkVM better!
+Thank you for helping make snarkVM better!
[π§ What do the emojis mean?](https://allcontributors.org/docs/en/emoji-key)
@@ -104,21 +104,21 @@ Thank you for helping make SnarkVM better!
![Collin Chin](https://avatars.githubusercontent.com/u/16715212?v=4?s=100) Collin Chin π» π π |
- ![Alessandro Coglio](https://avatars.githubusercontent.com/u/2409151?v=4?s=100) Alessandro Coglio π» π β οΈ |
+ ![Alessandro Coglio](https://avatars.githubusercontent.com/u/2409151?v=4?s=100) Alessandro Coglio π» π β οΈ |
![Niklas Long](https://avatars.githubusercontent.com/u/13221615?v=4?s=100) Niklas Long π» |
![jules](https://avatars.githubusercontent.com/u/30194392?v=4?s=100) jules π» |
![Ali Mousa](https://avatars.githubusercontent.com/u/12452142?v=4?s=100) Ali Mousa π» |
![Weikeng Chen](https://avatars.githubusercontent.com/u/14937807?v=4?s=100) Weikeng Chen π» |
- ![Max Bruce](https://avatars.githubusercontent.com/u/8600837?v=4?s=100) Max Bruce π» |
+ ![Evan Schott](https://avatars.githubusercontent.com/u/53463459?v=4?s=100) Evan Schott π» |
+ ![Max Bruce](https://avatars.githubusercontent.com/u/8600837?v=4?s=100) Max Bruce π» |
![zhiqiangxu](https://avatars.githubusercontent.com/u/1265027?v=4?s=100) zhiqiangxu π» |
![Javier RodrΓguez Chatruc](https://avatars.githubusercontent.com/u/49622509?v=4?s=100) Javier RodrΓguez Chatruc π» |
![Eduardo Morais](https://avatars.githubusercontent.com/u/13047772?v=4?s=100) Eduardo Morais π» |
![Maciej ZwoliΕski](https://avatars.githubusercontent.com/u/34972409?v=4?s=100) Maciej ZwoliΕski π» |
![Ivan Litteri](https://avatars.githubusercontent.com/u/67517699?v=4?s=100) Ivan Litteri π» |
![Francisco Strambini](https://avatars.githubusercontent.com/u/5733366?v=4?s=100) Francisco Strambini π» |
- ![swift-mx](https://avatars.githubusercontent.com/u/80231732?v=4?s=100) swift-mx π» |
![Haruka](https://avatars.githubusercontent.com/u/861659?v=4?s=100) Haruka π π» |
@@ -130,11 +130,20 @@ Thank you for helping make SnarkVM better!
![Psi Vesely](https://avatars.githubusercontent.com/u/3538418?v=4?s=100) Psi Vesely π» |
+ ![swift-mx](https://avatars.githubusercontent.com/u/80231732?v=4?s=100) swift-mx π» |
![Nacho Avecilla](https://avatars.githubusercontent.com/u/63374472?v=4?s=100) Nacho Avecilla π» |
![qy3u](https://avatars.githubusercontent.com/u/65523321?v=4?s=100) qy3u π» |
![Yt](https://avatars.githubusercontent.com/u/5317234?v=4?s=100) Yt π» |
![Kostyan](https://avatars.githubusercontent.com/u/78592281?v=4?s=100) Kostyan π» |
+ ![stanlagermin](https://avatars.githubusercontent.com/u/40028493?v=4?s=100) stanlagermin π» |
+ ![Sukey](https://avatars.githubusercontent.com/u/35202440?v=4?s=100) Sukey π» |
+
+
+ ![Alex Zhao](https://avatars.githubusercontent.com/u/136443781?v=4?s=100) Alex Zhao π» |
+ ![ghost ant](https://avatars.githubusercontent.com/u/53888545?v=4?s=100) ghost ant π» |
+ ![Psi Vesely](https://avatars.githubusercontent.com/u/3538418?v=4?s=100) Psi Vesely π» |
![Dependabot](https://avatars.githubusercontent.com/u/27347476?v=4?s=100) Dependabot π» |
+ ![Dependabot Preview](https://avatars.githubusercontent.com/u/27347476?v=4?s=100) Dependabot Preview π» |
![All Contributors](https://avatars.githubusercontent.com/u/46410174?v=4?s=100) All Contributors π |
diff --git a/ledger/committee/src/lib.rs b/ledger/committee/src/lib.rs
index e3993022b5..dca9462ee9 100644
--- a/ledger/committee/src/lib.rs
+++ b/ledger/committee/src/lib.rs
@@ -53,16 +53,14 @@ impl Committee {
/// Initializes a new `Committee` instance.
pub fn new_genesis(members: IndexMap, (u64, bool)>) -> Result {
- // Ensure there are exactly 4 members.
- ensure!(members.len() == 4, "Genesis committee must have 4 members");
// Return the new committee.
Self::new(0u64, members)
}
/// Initializes a new `Committee` instance.
pub fn new(starting_round: u64, members: IndexMap, (u64, bool)>) -> Result {
- // Ensure there are at least 4 members.
- ensure!(members.len() >= 4, "Committee must have at least 4 members");
+ // Ensure there are at least 3 members.
+ ensure!(members.len() >= 3, "Committee must have at least 3 members");
// Ensure there are no more than the maximum number of members.
ensure!(
members.len() <= Self::MAX_COMMITTEE_SIZE as usize,
@@ -400,7 +398,7 @@ mod tests {
// Set the number of rounds.
const NUM_ROUNDS: u64 = 256 * 2_000;
// Sample the number of members.
- let num_members = rng.gen_range(4..50);
+ let num_members = rng.gen_range(3..50);
// Sample a committee.
let committee = crate::test_helpers::sample_committee_custom(num_members, rng);
// Check the leader distribution.
diff --git a/ledger/committee/src/prop_tests.rs b/ledger/committee/src/prop_tests.rs
index c66769fa98..f0aa2e7bb2 100644
--- a/ledger/committee/src/prop_tests.rs
+++ b/ledger/committee/src/prop_tests.rs
@@ -125,7 +125,7 @@ impl Arbitrary for ValidatorSet {
fn arbitrary_with(_: Self::Parameters) -> Self::Strategy {
// use minimal validator set to speed up tests that require signing from the committee members
- validator_set(any_valid_validator(), size_range(4..=4usize)).boxed()
+ validator_set(any_valid_validator(), size_range(3..=4usize)).boxed()
}
}
@@ -149,7 +149,7 @@ pub fn any_valid_private_key() -> BoxedStrategy> {
#[allow(dead_code)]
fn too_small_committee() -> BoxedStrategy>> {
- (1u64.., validator_set(any_valid_validator(), 0..4)).prop_map(to_committee).boxed()
+ (1u64.., validator_set(any_valid_validator(), 0..3)).prop_map(to_committee).boxed()
}
#[allow(dead_code)]
@@ -199,5 +199,5 @@ fn invalid_stakes(#[strategy(too_low_stake_committee())] committee: Result>) {
- assert!(matches!(committee, Err(e) if e.to_string().as_str() == "Committee must have at least 4 members"))
+ assert!(matches!(committee, Err(e) if e.to_string().as_str() == "Committee must have at least 3 members"))
}